Cmt faire une pause d une application

hamazing85 Messages postés 1 Date d'inscription dimanche 2 avril 2006 Statut Membre Dernière intervention 26 juin 2006 - 26 juin 2006 à 01:24
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 - 26 juin 2006 à 10:47
salut j ai fais 1 programme de gestion de LED "ki fait des animations" mais je bloque!!!!
j ai besion d une fonction  qui fait un "delai" l equivalent du "delay()" en c - pour ceux qui s y connaissent,pour jouer sur la vitesse des anims....j ai bo chercher mais :(
sleep bloke tout le prog ce n est po ce ke j veux!
aider moi svp c urgent!!!!!!!!!!!

4 réponses

katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
26 juin 2006 à 06:33
if gettickcount > delai then

    'tada

    delai=gettickcount+1000

end if
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
26 juin 2006 à 08:39
cela fait une attente active qui aura le même comportement d'un sleep, sauf qu'il occupera tout le CPU !!!

utilise plutôt un :


if gettickcount > delai then
    DoEvents
end if

De plus, j'ai du mal à voir ce qu'est censé faire ton delai=gettickcount+1000 puisqu'alors, le test gettickcount > delai ne sera jamais validé si la boucle dure moins d'une seconde... et donc risque de boucle infinie !
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
26 juin 2006 à 08:54
Salut,

En vba je sais qu'il y a la méthode "WAIT". Je ne sait pas par contre si cette méthode est utilisable en VB6



















@++
<?xml:namespace prefix v ns "urn:schemas-microsoft-com:vml" /?><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></v:path><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype>  Mortalino 

Le Mystérieux Chevalier "Provençal, le Gaulois"
N'oubliez pas de lire le règlement
0
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
26 juin 2006 à 10:47
On assume que le système de LEDs marche avec un timer, non?


D'ou toutes les x millisecondes, si le ticket est supérieur à la
valeur  délai -un Long préalablement initialisé, manipule les leds. Le retse du temps le timer tourne sans rien exécuter.


Pas de sleep, pas de boucle, 0% CPU
0
Rejoignez-nous