Problème de timer Visual Basic

Résolu
-Shadow- -  
 -Shadow- -
Bonjour,
J'ai voulu faire des contrôles clignotants, qui changent tantôt en jaune, tantôt en jaune clair. J'ai utilisé la boucle, mais c'était nul,
parce que ça freezais l'application.
Alors j'ai utilisé des timers.

Nom des contrôles:
Label: TwLabel
Bouton: TwButton
Timer: Scintille

Voici le code:

Private Sub Scintille_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Scintille.Tick
If Scintille.Interval = 100 Then
TwLabel.ForeColor = Color.LightYellow
TwButton.BackColor = Color.LightYellow
End If

If Scintille.Interval = 800 Then
TwLabel.ForeColor = Color.Yellow
TwButton.BackColor = Color.Yellow
End If
End Sub

Mais il y a un problème:
ça marche, je vois les contrôles jaunes puis jaunes clairs, mais qu'une fois! Je voudrais que ça le fasse tout le temps.
Je vous serait très reconnaissant de m'aider.
Configuration: Windows XP MCE 2005
Firefox 2.0.0.11

2 réponses

  1. le père
     
    Bonjour

    scintille.intervalle te donne la durée de ton timer, pas là où il en est rendu. Si tu as mis sa valeur à 800, ton premier IF ne sera jamais exécuté
    Utilise une variable static pour mémoriser si son bouton est clair ou foncé et inverse la variable à chaque fois

    Private Sub Scintille_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Scintille.Tick

    Static Clair as boolean

    Clair = not clair
    if Clair then
    TwLabel.ForeColor = Color.LightYellow
    TwButton.BackColor = Color.LightYellow
    Else
    TwLabel.ForeColor = Color.Yellow
    TwButton.BackColor = Color.Yellow
    End If
    End Sub

    Si tu veux avoir des périodes différentes, modifie scintille.interval dans chacune des conditions
    0
  2. -Shadow-
     
    Merci! ça marche super bien!
    les contrôles clignotent comme je voulais!
    bye!
    0