Mettre la nouvelle valeur dans un timer!!!!!!!!!!!
magicienblanc
Messages postés17Date d'inscriptionjeudi 22 mai 2008StatutMembreDernière intervention15 mars 2009
-
14 mars 2009 à 01:48
magicienblanc
Messages postés17Date d'inscriptionjeudi 22 mai 2008StatutMembreDernière intervention15 mars 2009
-
15 mars 2009 à 19:52
salu tou le monde
ce problem pourrai paraitre bizzare,mai je galere avec,voila
j'essai de realiser un program qui
incrémente ou decremente un compteur
et envoi la valeur a un timer pour que cette valeur soi la le temps pour une lampe de rester allumer
le probleme c'est pa de comment realiser le programme .....
le probleme c ke la valeur de compteur reste la mem....,la 1ere foi il l'allume selon le temps donner...apré si je le modifie
il met pa la nouvelle valeur .....mai une autre quelconque...et bien sur je le ve pa!!!!
jespere ke je me sui bien fai expliquer
si quelqu'un pourrai maider
merci
A voir également:
Mettre la nouvelle valeur dans un timer!!!!!!!!!!!
magicienblanc
Messages postés17Date d'inscriptionjeudi 22 mai 2008StatutMembreDernière intervention15 mars 2009 14 mars 2009 à 01:55
voila le programme utilisé
Private Sub Command3_Click() \\\\\\\\\de decrementation
If X >= 10 Then
X = X - 10
Label4.Caption = X
Else
X = 0
Label4.Caption = X
End If
End Sub
Private Sub Command4_Click() \\\\\\\\\\de l'incrementation
If y <= 50 Then
X = X + 10
Label4.Caption = X
Else
X = 60
Label4.Caption = X
End If
End Sub
Private Sub Command5_Click()
Timer1.Interval = X * 100
Picture3.Visible = True \\\\\\\\\\\\\\\\lampe rouge allume
Picture4.Visible = False \\\\\\\\\\lampe noir
End Sub
Private Sub Timer1_Timer() \\\\\\\\\\\\\\\\\\timer
Picture3.Visible = False \\\\\\\\\\lampe rouge etteinte
Picture4.Visible = True
End Sub
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 14 mars 2009 à 08:10
Bonjour,
1) je ne vois aucune expression conditionnelle dans l'évènement Timer de ton Timer
2) ton timer fait toujours la même chose !
Je crois qu'il va te falloir te pencher un peu sur :
- ce qu'est un Timer et quel en est le principe !
- ce que sont les propriétés d'un timer (plus particulièrement la propriété Interval)
- ce à quoi sert un évènement (ici l'évènement Timer de ton Timer)
ainsi qu'à l'utilisation d'une variable Static
Rien, dans tout cela, n'est parfaitement exposé dans ton aide en ligne (lis-la donc !)
cnt
Messages postés219Date d'inscriptionlundi 21 novembre 2005StatutMembreDernière intervention20 décembre 20101 14 mars 2009 à 19:56
A partir de cet exemple tu devrais pouvoir trouver ta solution
Private Sub Command1_Click()
Timer1.Interval = 100
Picture3.Visible = True
Picture4.Visible = False
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Static n As Long
n = n + 1
If n = 10 Then
Picture3.Visible = Not Picture3.Visible
Picture4.Visible = Not Picture3.Visible
n = 0
End If
End Sub
magicienblanc
Messages postés17Date d'inscriptionjeudi 22 mai 2008StatutMembreDernière intervention15 mars 2009 15 mars 2009 à 13:30
salu
j'ai suivi les conseils de jmfo et cnt ,ca etai de grande aide seulemen que le resulta que j'ai eu c'est un clignotement d'une image....
ce que je cherche c'est allumer par un boutoncommand une lampe pendant un temps defini et quand elle eteind c'est fini...apres si je modifi la valeur de temps elle s'allume pendant la nouvelle valeur de temps et d'etein
c'est tou!!!
et je voi toujour pa la solution ,
si quelqu'un peu m'aider SVP
merci
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 15 mars 2009 à 15:18
Ecoute, magicienbalnc,
ton affaire est vraiment trop simple, y compris pour les débutants de chez débutant.... !
Ton Timer possède également une propriété enabled (et son évènement timer n'entre en jeu que lorsque cette propriété est à True et cesse lorsque cette propriété est à False !)
Le reste est trop enfantin...
Prends ta tête entre tes mains et réfléchis donc un peu (pas trop... ce ne sera pas nécessaire !)
Allez ! un peu (très peu ... quasiment rien ...) d'imagination, quoi ...
cnt
Messages postés219Date d'inscriptionlundi 21 novembre 2005StatutMembreDernière intervention20 décembre 20101 15 mars 2009 à 16:24
Voila une solution toute mâchée
' *** Zone déclarations du module ***
Private X As Long
-------------------------------------------------------------------
' *** Initialisation ***
Private Sub Form_Load()
Picture3.Visible = False
Picture4.Visible = True
X = 10
Label4.Caption = X / 10 & " Secondes"
Timer1.Enabled = False
End Sub
' *** Incrémentation ***
Private Sub Command4_Click()
If X <= 50 Then
X = X + 10
Else
X = 60
End If
Label4.Caption = X / 10 & " Secondes"
End Sub
' *** Décrémentation ***
Private Sub Command3_Click()
If X >= 10 Then
X = X - 10
Else
X = 0
End If
Label4.Caption = X / 10 & " Secondes"
End Sub
' *** Démarrage ***
Private Sub Command1_Click()
If X = 0 Then
Timer1.Enabled = False
Else
Timer1.Interval = X * 100
Picture3.Visible = True
Picture4.Visible = False
Timer1.Enabled = True
End If
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = False
Picture3.Visible = False
Picture4.Visible = True
End Sub
magicienblanc
Messages postés17Date d'inscriptionjeudi 22 mai 2008StatutMembreDernière intervention15 mars 2009 15 mars 2009 à 19:11
oh!!!!!! merci a toi cnt
pour te prendre la tete avec ca!!
je savai pa que cette ecriture existai!!!!! (Label4.Caption = X / 10 & " Secondes")
aussi que d'ecrire dans la form_ load() m'a echappé
je voi que la route est longue pour apprendre a programmé me fau encore de l'effort
merci grace a vou tous j'ai decouvert de nouvelle astuce et technique
a+
cnt
Messages postés219Date d'inscriptionlundi 21 novembre 2005StatutMembreDernière intervention20 décembre 20101 15 mars 2009 à 19:44
comme tu as pris "100" comme multiplicateur dans :
********** Timer1.Interval = X * 100 ***********si X 10 ----> X * 100 10 * 100 = 1000 millisecondes = 1 seconde
donc dans ---> Label4.Caption = X / 10 & " Secondes"
l'affichage sera en secondes avec --> " Secondes" collé(concaténé) grâce au caractère --> &
voila voila c'est tout
Tchao
CNTJC