Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Aurélien [MS]
Bonjour,
Je suppose que ton bouton Pause est censé arrêter tes longues commandes. L'idéal dans ce cas est le multi-threading.
Voici un exemple. Crée une Form, et ajoutes 3 boutons (un bouton pour lancer une longue tâche, un bouton pour faire pause et un bouton pour reprendre). Fais un Imports System.Threading.
Voici le code :
Dim myThread As Thread Dim myThreadStart = New ThreadStart(AddressOf boucleLongue)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click myThread = New Thread(myThreadStart) myThread.Name = "Update Thread" myThread.IsBackground = True myThread.Start() End Sub
Private Sub ButtonPause_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPause.Click myThread.Suspend() End Sub
Private Sub ButtonResume_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonResume.Click myThread.Resume() End Sub
Private Sub boucleLongue() Dim i As Double = 0 While i < 5000000000 i += 1 End While MessageBox.Show("terminé") End Sub
-- Cordialement,
Aurélien NORIE Microsoft France ------------------ Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"ms" wrote in message news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Bonjour,
Je suppose que ton bouton Pause est censé arrêter tes longues commandes.
L'idéal dans ce cas est le multi-threading.
Voici un exemple.
Crée une Form, et ajoutes 3 boutons (un bouton pour lancer une longue tâche,
un bouton pour faire pause et un bouton pour reprendre).
Fais un Imports System.Threading.
Voici le code :
Dim myThread As Thread
Dim myThreadStart = New ThreadStart(AddressOf boucleLongue)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
myThread = New Thread(myThreadStart)
myThread.Name = "Update Thread"
myThread.IsBackground = True
myThread.Start()
End Sub
Private Sub ButtonPause_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles ButtonPause.Click
myThread.Suspend()
End Sub
Private Sub ButtonResume_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles ButtonResume.Click
myThread.Resume()
End Sub
Private Sub boucleLongue()
Dim i As Double = 0
While i < 5000000000
i += 1
End While
MessageBox.Show("terminé")
End Sub
--
Cordialement,
Aurélien NORIE
Microsoft France
------------------
Merci de bien vouloir répondre à ce message dans le newsgroup où il a été
posté. Je le consulte régulièrement.
"ms" <fpolese@rosenbluth.fr> wrote in message
news:u9BLrO8kDHA.2528@TK2MSFTNGP12.phx.gbl...
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Je suppose que ton bouton Pause est censé arrêter tes longues commandes. L'idéal dans ce cas est le multi-threading.
Voici un exemple. Crée une Form, et ajoutes 3 boutons (un bouton pour lancer une longue tâche, un bouton pour faire pause et un bouton pour reprendre). Fais un Imports System.Threading.
Voici le code :
Dim myThread As Thread Dim myThreadStart = New ThreadStart(AddressOf boucleLongue)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click myThread = New Thread(myThreadStart) myThread.Name = "Update Thread" myThread.IsBackground = True myThread.Start() End Sub
Private Sub ButtonPause_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonPause.Click myThread.Suspend() End Sub
Private Sub ButtonResume_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonResume.Click myThread.Resume() End Sub
Private Sub boucleLongue() Dim i As Double = 0 While i < 5000000000 i += 1 End While MessageBox.Show("terminé") End Sub
-- Cordialement,
Aurélien NORIE Microsoft France ------------------ Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"ms" wrote in message news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Aurélien [MS]
Désolé, je me croyais dans le Newsgroup VB.NET... Ce code ne fonctionne évidemment pas en VB6.
-- Cordialement,
Aurélien NORIE Microsoft France ------------------ Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"ms" wrote in message news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Désolé, je me croyais dans le Newsgroup VB.NET...
Ce code ne fonctionne évidemment pas en VB6.
--
Cordialement,
Aurélien NORIE
Microsoft France
------------------
Merci de bien vouloir répondre à ce message dans le newsgroup où il a été
posté. Je le consulte régulièrement.
"ms" <fpolese@rosenbluth.fr> wrote in message
news:u9BLrO8kDHA.2528@TK2MSFTNGP12.phx.gbl...
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Désolé, je me croyais dans le Newsgroup VB.NET... Ce code ne fonctionne évidemment pas en VB6.
-- Cordialement,
Aurélien NORIE Microsoft France ------------------ Merci de bien vouloir répondre à ce message dans le newsgroup où il a été posté. Je le consulte régulièrement.
"ms" wrote in message news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
The Ultimate Video Game Museum
Dim Pause As Boolean
----------------------------------------
Private Sub Command1_Click()
If Pause = True Then
Pause = False Command1.Caption = "Pause"
Else
Pause = True Command1.Caption = "Continuer"
End If
End Sub
----------------------------------------
Private Sub Form_Load()
Pause = False
End Sub
----------------------------------------
Private Sub Test()
Commande_1
While Pause = True
DoEvents
Wend
Commande_2
While Pause = True
DoEvents
Wend
Commande_3
While Pause = True
DoEvents
Wend
etc ...
End Sub
----------------------------------------
Voila ... Ca ça marche ! Mais regarde bien ton code car c''est pas très compliqué. T'as dû faire une erreur toute conne comme on fait souvent.
Topper
Webmastering, webdesign des sites : The Ultimate Video Game Museum : http://www.TUVGM.com/ TUVGM Live Playing ! : http://www.TUVGM.com/liveplaying/ FreeDO France : http://www.TUVGM.com/freedo/
"ms" a écrit dans le message de news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Dim Pause As Boolean
----------------------------------------
Private Sub Command1_Click()
If Pause = True Then
Pause = False
Command1.Caption = "Pause"
Else
Pause = True
Command1.Caption = "Continuer"
End If
End Sub
----------------------------------------
Private Sub Form_Load()
Pause = False
End Sub
----------------------------------------
Private Sub Test()
Commande_1
While Pause = True
DoEvents
Wend
Commande_2
While Pause = True
DoEvents
Wend
Commande_3
While Pause = True
DoEvents
Wend
etc ...
End Sub
----------------------------------------
Voila ... Ca ça marche ! Mais regarde bien ton code car c''est pas très
compliqué.
T'as dû faire une erreur toute conne comme on fait souvent.
Topper
Webmastering, webdesign des sites :
The Ultimate Video Game Museum : http://www.TUVGM.com/
TUVGM Live Playing ! : http://www.TUVGM.com/liveplaying/
FreeDO France : http://www.TUVGM.com/freedo/
"ms" <fpolese@rosenbluth.fr> a écrit dans le message de
news:u9BLrO8kDHA.2528@TK2MSFTNGP12.phx.gbl...
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Voila ... Ca ça marche ! Mais regarde bien ton code car c''est pas très compliqué. T'as dû faire une erreur toute conne comme on fait souvent.
Topper
Webmastering, webdesign des sites : The Ultimate Video Game Museum : http://www.TUVGM.com/ TUVGM Live Playing ! : http://www.TUVGM.com/liveplaying/ FreeDO France : http://www.TUVGM.com/freedo/
"ms" a écrit dans le message de news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Zoury
Salut! :O)
Pour contiuer sur la même voie qu'Aurélien, il faudra te tourner du côté des ActiveX Exe ou autres composantes tierces...
Regarde cette discussion récente sur le sujet : http://groups.google.com/groups?threadm=eTCZq83gDHA.2080%40TK2MSFTNGP12.phx.gbl
Merci de poster les réponses au groupe afin d'en faire profiter à tous
ms
Merci a tous pour votre aide.
Fred
"ms" a écrit dans le message de news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Merci a tous pour votre aide.
Fred
"ms" <fpolese@rosenbluth.fr> a écrit dans le message de
news:u9BLrO8kDHA.2528@TK2MSFTNGP12.phx.gbl...
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
News
Ca ca marche très bien :
<< Sub Pause(Durée As Long) Dim Delay!, Dummy As Integer Delay! = Timer + Durée Do Dummy = DoEvents() Loop Until ((Timer > Delay!) Or (Timer < 3)) End Sub
puis...
Do pause (10) 'pause de 10 seconde Loop traitementOK >>
"ms" a écrit dans le message de news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
Pause.
j'ai essaie le Doevents mais ça n'aide pas.
Y a t'il une solution ?
Merci
Ca ca marche très bien :
<<
Sub Pause(Durée As Long)
Dim Delay!, Dummy As Integer
Delay! = Timer + Durée
Do
Dummy = DoEvents()
Loop Until ((Timer > Delay!) Or (Timer < 3))
End Sub
puis...
Do
pause (10) 'pause de 10 seconde
Loop traitementOK
>>
"ms" <fpolese@rosenbluth.fr> a écrit dans le message de
news:u9BLrO8kDHA.2528@TK2MSFTNGP12.phx.gbl...
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton
Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée
jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une
attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton
<< Sub Pause(Durée As Long) Dim Delay!, Dummy As Integer Delay! = Timer + Durée Do Dummy = DoEvents() Loop Until ((Timer > Delay!) Or (Timer < 3)) End Sub
puis...
Do pause (10) 'pause de 10 seconde Loop traitementOK >>
"ms" a écrit dans le message de news:
Je n'arrive pas a trouver un moyen en VB pour faire fonctionner un bouton Pause.
Mon appli envoie plusieurs commandes à la suite a une autre et est bloquée jusqu'a la fin en sachant que pour chaque commandes envoyé il y a une attende de 2 -5 secondes pour recevoir une réponse.
Pendant tout ce temps rien ne se passe quand je clique sur le bouton