Paramètrer un élément d'une form à une autre

Résolu
julien2424
Messages postés
76
Date d'inscription
mardi 8 août 2006
Statut
Membre
Dernière intervention
24 avril 2012
- 17 juil. 2009 à 16:03
julien2424
Messages postés
76
Date d'inscription
mardi 8 août 2006
Statut
Membre
Dernière intervention
24 avril 2012
- 17 juil. 2009 à 21:38
Bonjour à vous tous... ^^

Je suis débutant, et je fais appel à vous pour savoir si vous pouvez m'aider.

J'aimerai créer une form "Options" dans laquelle, je voudrais choisir le delais de mise à jour d'un timer dans une autre form (Form1).
Pour faire simple, j'aimerai finalement savoir, si il est possible de parametrer l'intervale de mise à jour d'un timer actif sur une form depuis une autre form.

Je suis prêt à essayer d'ébaucher des lignes de code avec quelqu'un qui s'y connait, car je suis débutant, uniquement pour ce problème la.

Je vous remercie d'avance
Bonne fin d'après-midi à tous

Jules

5 réponses

Flocreate
Messages postés
300
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3
17 juil. 2009 à 16:23
Bonjour,

Oui tu peux paramettrer le Timer.Interval depuis une autre form tout comme n'importe quelle autre propriété de n'importe quel objet

Dans La form Option :

Form1.NomduTimer.Interval = laNouvelleValeur

où :
- NomduTimer est le nom que tu a donné à l'objet Timer (par défaut Timer1)
- laNouvelleValeur est la valeur (integer)

notabéné, quand tu tape le code "dans la form Option", au momment où tu tape le point de "Form1." tu a la liste des objets methodes ... qui s'affiche. Le nom de ton timer devrait s'y trouver.

J'espere avoir répondu a ta question.
cordialement.

VB6, quand yen a plus yen a encore
Il y a tant a apprendre et seulement 24 heures dans une journée
3
Mayzz
Messages postés
2813
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
33
17 juil. 2009 à 20:43
Salut,

Simplement :

fenetre1.Timer2.Interval = cint(ComboBox1.Text) * 1000 


Pour le reste c'est ce que j'ai pensé dès le départ du moment ou j'ai lu ton post, à quoi bon créer un paramètrage avec un formulaire si tu ne sauvegarde pas celui-ci, en effet l'utilisateur est obligé à chaque lancement d'aller reparamètré le soft.

Donc le plus simple est donc le My.Settings :

Fais un click droit dans l'explorateur de solution sur ton projet puis dans le menu choisi propriétés, ou click sur l'icône "My Project". Dans la feuille de propriétés du projet va à l'onglet "Paramètres". Dans "Nom" saisis le nom du paramètres par exemple "Interval_Timer", en type met "Integer", tu peux mettre une valeur par défaut si tu le souhaite ou laisser à zéro.

Dans la feuille de configuration, au Load :

Me.ComboBox1.Text = My.Settings.Interval_Timer / 1000


A la validataion :

[code=vb]My.Settings.Timer_Interval = CInt(ComboBox1.Text) * 1000
My.Settings.Save
Fenêtre1.Timer2.Interval = My.Settings.Timer_Interval

Dans la Fenêtre1 au load :

[code=vb]Me.Timer2.Interval = My.Settings.Timer_Interval

@+ Mayzz.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
3
julien2424
Messages postés
76
Date d'inscription
mardi 8 août 2006
Statut
Membre
Dernière intervention
24 avril 2012

17 juil. 2009 à 17:18
Merci beaucoup, ça marche parfaitement. enfin, ça m'a beaucoup aidé...
^^

J'ai deux autres questions maintenant,

- je choisis le choix de l'intervalle avec un ComboBox
mes choix sont 10 secondes, 1 minutes, 15 minutes.
Est-il possible de modifier ça en milliseconde du genre...

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If ComboBox1.Text 1 1000 Then
ElseIf ComboBox1.Text 5 5000 Then
End If
fenetre1.Timer2.Interval = ComboBox1.Text
End Sub

- est-il possible de sauvegarder mes choix? C'est à dire si on choisis, 5 secondes, que cet intervalle soit sauvegardé à chaque démarrage du programme.
Je pensais à My.Settings, mais je sais pas l'utiliser...

Merci à vous tous de votre aide
bonne fin de journée
Jules
0
julien2424
Messages postés
76
Date d'inscription
mardi 8 août 2006
Statut
Membre
Dernière intervention
24 avril 2012

17 juil. 2009 à 21:21
Tout fonctionne parfaitement, encore merci Mayzz, cependant j'ai un problème.

Visual studio m'indique que, dans ces lignes de code:
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
My.Settings.Interval_Timer = CInt(ComboBox1.Text) * 10000
My.Settings.Save()
fenetre1.Timer2.Interval = My.Settings.Interval_Timer
Me.DialogResult = System.Windows.Forms.DialogResult.OK
Me.Close()

la ligne My.Settings.Interval_Timer = CInt(ComboBox1.Text) * 10000
est READ ONLy...

Je sais pas trop ce qui se passe?

Bonsoir
Jules
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
julien2424
Messages postés
76
Date d'inscription
mardi 8 août 2006
Statut
Membre
Dernière intervention
24 avril 2012

17 juil. 2009 à 21:38
J'avais mis une portée pour l'application... piuff
En corrigeant par Utilisateur, tout fonctionne parfaitement!

Encore en grand merci Mayzz pour ton aide précieuse. ^^
Bonne soirée

Jules
0