Lancer un msgbox sans bloquer l'application.

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 657 fois - Téléchargée 33 fois

Contenu du snippet

Voici un petit code tout simple pour afficher une msgbox sans bloquer le thread principal de l'application.

Source / Exemple :


Sub LanceThread()
		Dim Thread1 As New System.Threading.Thread(AddressOf OtherThread)
		Thread1.Start()		' Démarrer le nouveau thread.
	End Sub

	Sub OtherThread()
		MsgBox("Me voilà, le nouveau Thread !")
	End Sub

Private Sub rechercherButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rechercherButton.Click

		Cursor.Current = Cursors.WaitCursor
		LanceThread()

		'ici : ma fonction qui dure longtemp.
		DoSomeThing()

		Cursor.Current = Cursors.Default

	End Sub

A voir également

Ajouter un commentaire

Commentaires

vercomax
Messages postés
548
Date d'inscription
mercredi 28 juillet 2004
Statut
Membre
Dernière intervention
11 septembre 2013
2 -
Bonjour,

Impeccable, merci.
crocejf2000
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
-
Salut,

Pour moi ca fonctionne Super bien, c'est exactement ce que je recherchait, les thread sans prise de tête et en 2 lignes de codes... Trop fort 10/10 !!

Jeff
Bing2000
Messages postés
18
Date d'inscription
lundi 28 octobre 2002
Statut
Membre
Dernière intervention
12 mars 2007
-
oui mais ça ne marche pas quand je l'execute sur le server de production. Par contre ça fonctionne quand je le lance depuis VS2005... pkoi ?
winny68
Messages postés
99
Date d'inscription
vendredi 25 avril 2003
Statut
Membre
Dernière intervention
14 février 2011
-
Ton code est vraiment simple et bien.

Merci
Egyde
Messages postés
161
Date d'inscription
lundi 17 mai 2004
Statut
Membre
Dernière intervention
16 juillet 2007
-
Je pense que c plus simple avec l'API MessageBox, non?

Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long

...
Private Sub LanceMsgbox()
Call MessageBox(0&, "Me voilà, le nouveau thread!", "caption", vbInformation)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.