Hallo,
Private Sub irgend_eine_Funktion_mit_Werten(ByVal irgend_ein_Wert As Object)
MessageBox.Show(irgend_ein_Wert)
End SubPrivate Sub Button1Click(ByVal sender As Object,ByVal e As System.EventArgs) Handles hutton1.Click
Dim th As New System.Threading.Thread(AddressOf irgend_eine_Funktion)
End Sub
Und die Gallileo-Handbücher sind genauso verwirrend.
fand ich zu diesem Thema nicht.
Ein simples Beispiel, simpler als Deines, das ein eigenes Formular mit dem Namen MessageBox verwendet:
Public Class Form1
' Prozedur, die in einem neuen Thread aufgerufen werden soll
' Wie Du richtig erkannt hast, muss der Parameter als Objekt übergeben
' werden
Private Sub MyProcedure(ByVal obj As Object)
' Wende die toString-Methode an, die *jedes* Objekt in VB.NET hat,
' um den Übergabeparameter in eine Zeichenkette zu wandeln, das was
' eine Messagebox haben will.
MsgBox(obj.toString)
End Sub
Private Sub Button1_Click( _
ByVal sender As Object, _
ByVal e As System.EventArgs _
) Handles Button1.Click
' Soweit warst Du ja schon.
Dim myThread As New System.Threading.Thread(AddressOf MyProcedure)
' Du musst nur noch den Thread starten :-)
' Ein typisches "Hallo Welt"-Programm
myThread.Start("Hallo Thread!") ' MsgBox erscheint mit dem Inhalt "Hallo Thread!"
End Sub
End Class
Freundliche Grüße
Vinzenz