Bonjour,
J'ai un message d'erreur quand j'utilise cette procédure :
déclenchée par un click sur un bouton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub Methode2() Dim main As Form5 = CType(Application.OpenForms("Form5"), Form5) For x As Integer = 0 To 10 main.Invoke(New MethodInvoker(Sub() Label8.Text = x)) Label8.Text = x Thread.Sleep(1000) Next End Sub
L'erreur est : "System.InvalidOperationException*: 'Impossible d'appeler Invoke ou BeginInvoke sur un contrôle tant que le handle de fenêtre n'a pas été créé.'"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub VID49_2_Form5_Click(sender As Object, e As EventArgs) Handles VID49_2.Click, VID49_2_Form5.Click Dim thread1 As New Thread(Sub() Methode2()) thread1.IsBackground = True thread1.Start() End Sub
A noter que j'ai rajouté la déclaration dans ma Methode2 :
et que le problème ne survient quand j'arrete le processus(avant que x vaille 10) quand je ferme la fenetre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Dim main As Form5 = CType(Application.OpenForms("Form5"), Form5)
Si quelqu'un a une idée MERCI
Partager