VB6 Timer

Résolu
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 22 août 2005 à 13:47
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 22 août 2005 à 14:52
Salut..

Petite question à propos du Timer

J'ai écrit un message la semaine derniere a cause que mon programme clignote toujours... Si j'ouvre un autre application alors mon porgramme cligne (La barre du Titre clignote)

Je fais démarer mon programme par une image qui dure quelque seconde et ensuite mon programme principale s'ouvre...


Mon bug vient de cette ligne de commande
Ce code est dans la feuille de Démarage soit celle qui dure quelque seconde au démarage.


Private Sub Form_Load()
TimerDemarrage.Enabled = True
TimerDemarrage.Interval = 750

End Sub

Private Sub TimerDemarrage_Timer()
frmprincipale.Show
frmOuverture.Visible = False
End Sub

Mon mon code fait toujours le Private Sub TimerDermarage
lorsque le code arrive au End Sub ca prend une pause de quelque secondes et il recommence...

Comment je fais pour lui dire d'arretter ????

merci d'avance

4 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
22 août 2005 à 14:52
Private Sub Form_Load()
TimerDemarrage.Interval = 750 'ces 2 lignes sont inversées. tu n'as pas de raisonde changer le timer en cours d'execution
TimerDemarrage.Enabled = True 'vérifie bien qu'il soit sur Flase en conception. pas d'intérêt sinon
End Sub

Private Sub TimerDemarrage_Timer()
TimerDemarrage.Enabled = False
frmprincipale.Show
'A SUPPRIMER : c'est ici que tout déconne. ton timer est toujours actif mais tu caches la form. regarde dans ton gestionnaire de tâches, avec un UnLoad sur ton autre Form, le programme n'est jamais terminé
'*** frmOuverture.Visible = False

UnLoad frmOuverture
End Sub

PCPT
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 août 2005 à 13:55
Salut
Normal : Un Timer exécute le code toutes les 750 millisecondes dans ton cas.
Si tu demandes au Timer de faire un Form.Show à ce rythme, Windows ne va pas l'étaler !
Sans changer grand chose, ajoute juste ceci dans le code de ton Timer, comme ça, il ne le fera qu'une seule fois (mais je ne vois pas l'intérêt du Timer)

TimerDemarrage.Enabled = False ' Stoppe le Timer

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
22 août 2005 à 14:38
Salut... Pourquoi tu ne vois pas l'interet du Timer... ???

Il y a une meilleur idée ????

Je ne vois pas....

Propose ton idée... ca m'interesse..

merci...
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
22 août 2005 à 14:43
Ca ne fonctionne pas si je mets le code que tu me proposes, l'image de départ ne disparait pas pour faire place au programme...

Je la mets où cette ligne de code ????

TimerDemarrage.Enabled = False

merci d'avance
0
Rejoignez-nous