Compte a rebourd avec une progressbar

Résolu
cartman16 Messages postés 18 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 24 octobre 2014 - 22 oct. 2014 à 16:26
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 - 22 oct. 2014 à 18:34
Bonjour a tous,
j'ai une Form1, dans la Form1 j'ai 12 boutons, chaque bouton ouvre une nouvelle Form (Form2, Form3 etc) "intro pour info"

1 Question;
Dans la Form2 j'ai 1 ProgressBar que je veut transformer en décompte a rebours exemple: la progressbar et a value 100 au départ et quand on déclenche le lancement avec un bouton je veut que la progressbar descende d'une barre (value -1 par jour) et je veut que quand je ferme mon application sa sauvegarde l'état de la progressbar puis quand je ré ouvre mon application la progressbar calcul le temps entre la fermeture et l'ouverture puis recalcule la value de la progressbar de sorte que le compte a rebours fonctionne même le programme fermer. (Progressbar câblé sur la date)

2 Question;
comment faire pour sauvegarder la position des radioboutons, image afficher dans la picturebox a la fermeture d'une Form dans la Form et le tout dans l'application?
Merci a tout ceux qui me viendront en aide.. ;-)

3 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 22/10/2014 à 17:01
Bonjour,
Tes deux questions ont la même réponse :
qu'il s'agisse ou non d'une progressbar ou de n'importe quel autre contrôle (également vrai avec n'importe quelle variable), il s'agirait d'en conserver la valeur d'une de ses propriétés entre deux sessions.
Cela ne peut se faire qu'en mémorisant ailleurs (fichier, Base de registre, etc ...) la valeur à conserver. A écrire lors d'une session et à relire lors d'une autre session.
On ne sait par ailleurs si tu développes sous VB6 ou VB.Net (tu as ouvert cette discussion dans la section générale Visual Basic !)
Si sous VB.Net : ouvre MSDN sur le mot My.Settings

PS : et pour que ton compte à rebours inclue le temps passé entre deux sessions : il va sans dire (évident) qu'il te suffit de mémoriser (comme dit plus haut) la date/heure de fermeture, puis (à l'ouverture suivante) de relever la nouvelle date/heure, calculer le temps écoulé et modifier en conséquence la propriété value de ta progressbar (mais cela va tellement de soi).


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
cartman16 Messages postés 18 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 24 octobre 2014
22 oct. 2014 à 17:06
je code avec Visual Basic 2010 express
il faut créer (une variable) ou (une class) Load Form et Save Form ?
et comment je synchronise la progressbar a Days+1 = value-1 ?
on peu pas activer une option dans proprietés / (Application Setting) / (Property Binding) pour que les radioboutons mémorise leur position ?
merci
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 oct. 2014 à 17:09
1) Je déplace donc ta discussion
2) il me semble que je t'ai déjà répondu (My.settrings ou fichier texte ou base de registre ... dans tous les cas : mémorisation hors de ton appli).
0
cartman16 Messages postés 18 Date d'inscription dimanche 19 octobre 2014 Statut Membre Dernière intervention 24 octobre 2014
22 oct. 2014 à 17:16
excuse moi si j'ai du mal je débute en vb et Jaime bien comprendre ce que je fait mais dé fois c'est plus dur pour moi désolé.
Merci
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
22 oct. 2014 à 17:19
Tu aimes bien comprendre ? Bravo !
Mais il me semble que ce que je t'ai dit plus haut ne nécessite pas vraiment un effort exceptionnel de compréhension.
Je ne vois par ailleurs pas comment je pourrais le dire plus simplement.
Bonne chance.
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
22 oct. 2014 à 17:47
Bonjour,

Il faut jouer avec les dates pour la 1ère question:

Public Class Form1
    ' http://plasserre.developpez.com/cours/vb-net/?page=langage-vb8#LV-AB-4
    Dim DateD As DateTime 'date jour
    Dim DateS As String ' Declare les  variables.
    Dim today As System.DateTime
    Dim duration As System.TimeSpan
    Dim answer As System.DateTime
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
       today = System.DateTime.Now
        duration = New System.TimeSpan(101, 0, 0, 0)
        answer = today.Add(duration)
        DateS = CStr(answer)  'Saisir une date : on récupère une string
        DateD = CDate(DateS)                'Conversion de la string en DateTime
        Label1.Text = CStr(DateDiff(DateInterval.Day, Now, DateD)) 'différence en jours
       ProgressBar1.Value = CInt(Label1.Text)
    End Sub
End Class


Je t'ai mis le site de références des Dates

Pour la 2ème question regarde ceci:

http://codes-sources.commentcamarche.net/source/51785-memoriser-valeur

Comme te l'a dit UCFOUTU que je salue: Fichier ou My.Settings qui est préférable. Le programme que je t'ai indiqué se sert des 2 cas de figure
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
22 oct. 2014 à 18:34
Tu peux aussi t'inspirer de ceci pour ton compte à rebours:

http://codes-sources.commentcamarche.net/source/view/100652/1340617

Le code que je t'ai donné demande a être modifié sur le nombre de jours restant. Ce programme t'y aidera.
0
Rejoignez-nous