Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ATTENDRE UN CERTAINS TEMPS (PAUSE) SANS "PERDRE LA MAIN" EN VB .NET


Information sur la source

Catégorie :VB.NET Source .NET ( DotNet ) Classé sous : pause, attente, attendre, sleep, wait Niveau : Débutant Date de création : 12/01/2003 Date de mise à jour : 04/03/2007 22:38:38 Vu : 15 049

Note :
8,2 / 10 - par 15 personnes
8,20 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (16)
Ajouter un commentaire et/ou une note


Description

Bon j'ai deja mis ce petit code ici en vb6 mais j'ai preferer ajouter une source differente plutot que de modifier l'ancienne et y ajouter la fonction en .net .
Ceci peut vous servir pour vos applis utilisants des sockets ou pour certains effet visuel par exemple... Enfin bref, c'est assez explicite pour que vous sachiez quand est ce que cela peut vous servir.
 

Source

  • 'à mettre dans un module ou qq part dans votre form
  • Friend Sub hbwait(ByVal ms_to_wait As Long)
  • Dim endwait As Double
  • endwait = Environment.TickCount + ms_to_wait
  • While Environment.TickCount < endwait
  • System.Threading.Thread.Sleep(1)
  • Application.DoEvents()
  • End While
  • End Sub
  • 'puis vous n'avez qu'a appeler la fonction comme tel :
  • hbwait(500) 'attends 500 millisecondes
  • 'ce petit exemple affiche la date et l'heure dans le label1, puis rafraichit cette valeur 5 secondes/5000 millisecondes apres pendant lesquels vous pouvez positionner,fermer votre form, etc...
  • Label1.Text = Now
  • hbwait(5000)
  • Label1.Text = Now
'à mettre dans un module ou qq part dans votre form

    Friend Sub hbwait(ByVal ms_to_wait As Long)
        Dim endwait As Double
        endwait = Environment.TickCount + ms_to_wait
        While Environment.TickCount < endwait
            System.Threading.Thread.Sleep(1)
            Application.DoEvents()
        End While
    End Sub


'puis vous n'avez qu'a appeler la fonction comme tel :

hbwait(500) 'attends 500 millisecondes


'ce petit exemple affiche la date et l'heure dans le label1, puis rafraichit cette valeur 5 secondes/5000 millisecondes apres pendant lesquels vous pouvez positionner,fermer votre form, etc...
        Label1.Text = Now
        hbwait(5000)
        Label1.Text = Now 

Conclusion

02/2003 : ... j'ai decouvert le system de threading en vb.net ... ce code ne sert donc à rien du tout. mais on ne peux pas supprimer ses codes donc...
03/2007 : mmm n'importe quoi, on ne fait pas tout en multithreading ^^, j'ai eu à nouveau besoin d'utiliser cette methode sur un recent projet ^^, cependant, ajout d'un sleep de 1ms, qui peut en effet peut etre reduire la précision, mais qui evite de faire tourner le procésseur à 100% pendant tout l'attente :)
 

Historique

04 mars 2007 22:38:38 :
ajout d'un sleep de 1ms, qui peut en effet peut etre reduire la précision, mais qui evite de faire tourner le procésseur à 100% pendant tout l'attente :)

Commentaires et avis

signaler à un administrateur
Commentaire de Mémère le 12/01/2003 22:59:29 administrateur CS

Alors la no comment, Kelle imagination! Bravo! Bravo! Bravo! T'as trouvé ça tout seul au fait?

signaler à un administrateur
Commentaire de SupraDolph le 13/01/2003 15:16:12

g déjà vu sa sur ce site pas exactement le même code mais bon...
sinon moi j'utilise :
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

signaler à un administrateur
Commentaire de hvb le 13/01/2003 20:36:31

deja en vb.net on appelera sleep de la maniere suivante :
System.Threading.Thread.Sleep(millisecondes as long) .
De plus ton programme va se figer, c'est ce que j'appelais "perdre la main"... alors qu'avec mon code ce n'est pas le cas.

Et memere, s'cuses moi de pas elever de nurmites, je debute en .net et je pense que ce sera le cas de pas mal de gens d'ici peu.

signaler à un administrateur
Commentaire de mimithebrain le 21/05/2003 03:15:06

SUPER COOL!

signaler à un administrateur
Commentaire de li9 le 07/03/2004 04:00:35

parfait c'est exactement ca qu'il me fallait!
bizarre mais c'est toujours quand je cherche pas que je trouve ce dont j'ai besoin :/

bravo pour le code !

signaler à un administrateur
Commentaire de leka le 15/05/2004 16:22:37

Heuresement que tu n'as pas supprimmé ton code, il vient de me sauver la vie avec un Winsock Justement, meme si mon appli est multithreadée pour la reception, mettre les erreurs de sock et de connection dans un thread reste tres tres dangereux.

signaler à un administrateur
Commentaire de MIBA le 22/09/2004 05:44:17

Merci beaucoup pour cette source, elle m'a été bien utile.

signaler à un administrateur
Commentaire de _Thy_ le 04/05/2005 12:07:09

Et oui comme quoi faut pas vendre la peau de la charrue avant de tuer les boeufs :
Ce code m'est également utile, pour soulager le CPU pendant un groooos batch.

Merci, donc.

signaler à un administrateur
Commentaire de cathrine le 10/10/2005 13:50:58

bonjour tt le monde,
je suis un debutante au programmation, je suis faire une petit base de donnee, j'ai un petit labotratoire d'analyses medicale, et je veux faire une base de donne au niveau d'acceil, est ce que je peux touver une aide.

merci d'avance.

signaler à un administrateur
Commentaire de francoislaba le 10/10/2005 15:44:42

Merci,

C'est ce que je recherchais, établir une pause dans le programme de manière à ce que les différente Box se rafraichissent pendant l'execution de plusieurs boucles...
MERCI!!!

signaler à un administrateur
Commentaire de cotazur le 24/04/2006 22:49:40

Merci beaucoup.

signaler à un administrateur
Commentaire de leonhart01 le 03/05/2007 11:34:20

Excellent source !
J'aivais besoin de faire un sleep de 1sec mais les
routines classique ne fonctionner pas donc merci

10/10

signaler à un administrateur
Commentaire de Iceabyssal le 20/06/2007 14:54:17

Je cherchais depuis hier comment interrompre un "System.Threading.Thread.Sleep"... Genre un arret d'urgence de programme. Et ton code est parfait pour cela !
Maintenant, je peux suspendre mon appli en plein milieu d'une pause.

Merci !

signaler à un administrateur
Commentaire de hvb le 20/06/2007 18:03:29

:)

signaler à un administrateur
Commentaire de bayroom le 04/12/2007 15:19:29 5/10

Chapeau; c'était vraiment utile...

signaler à un administrateur
Commentaire de mat_yaute le 04/10/2008 00:04:40 10/10

Un petite source qui m'a bien rendu service en tant que débutant en programmation. Je vais me la mettre sous le coude parce-que je pense même qu'elle va me servir pour d'autres choses.
Merci en tous cas.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

PAUSE SYSTEM [ par QuiGonJinn ] Bonjour, JE souhaiterai que mon appli fasse son traitement, puis dorme pendant X secondes... La OK un sleep et puis l'affaire est réglée... Ma condition d'attente [ par darthpolor_I ] bonsoir a tousmon probleme est le suivant:je dois realiser une une procedure qui fait une boucle en lisant un fichier txt mais je dois attendre une ce VBNET pause...sleep...pause...sleep... [ par bimbo777 ] Bonjour,J'ai un petit soucis en vbnet...je suis en train de cr&#233;er une appli qui traite des taches...mon soucis c'est que toutes les taches s'ench pb d'attente [ par sobullshit ] Bonjour,Petit problème tout con:Lors de l'éxecution de mon programme je dois attendre le passage d'une variable à true pour poursuivre mon calcul. Or Sleep / Wait [ par ymerej ] Bonjour,quel est l'équivalent en VB des fonctions comme Sleep(5), wait(5) qui permet d'attendre 5 secondes ?Vous allez me dire qu'on peut passer par u Pb avec la pause dans un programme [ par EvilGost ] Bonjour &#224; toute la communaut&#233; de d&#233;veloppeurs :)J'ai un petit probl&#232;me avec une fonction de pause que j'ai pris sur VBfrance, la v Attente paradoxale ! [ par Marneus73 ] Bonjour à tous,Encore un pb, de toute façon, je n'ai que ça !!! Je voudrais qu'un webbrowser affiche une page web et attende 10 secondes avant d'en ou Attendre la fin de l'éxécution [ par SnapFAB ] Bonsoir à tous,Voici ma question :Peut on empêcher l'appui sur n'importe quel touche tant que mon Sub n'est pas arriver à son terme.En faite l'action Comment faire une pause mais que excel reste actif? [ par louvierseb ] Bonjour,voici mon codeSub bConnection()a = UserformInterface.bsymbole1.TextWorkbooks("Action1.xls").Sheets("Input").Range("B3") = axa = Workbooks("Act Mettre en pause l'execution du programme [ par dan93190 ] Slt à tous, j'ai une petite question, si vous pouviez cela m'arrangerait.Mon appli parcours plusieurs dossiers contenant des fichiers Word et fait cer


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,577 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.