Hallo VB-Paradise,
Ich versuche mich seit einiger Zeit an Visual Basic. Aktuell möchte ich ein kleines Programm schreiben, mit dem ich 2-Dimensionale Koordiaten aus einer Textdatei einlesen kann ( in eine Listbox). Das klappt auch so weit. Anschließend soll man vier beliebige Koordinatenpärchen aus der Listbox auswählen können, um den Schnittpunkt der zwei Geraden, die von den ausgewählten Punkten gebildet werden, zu berechnen. Das wie folgt aussieht:
[Anhang: Bild 1]
Mein Problem ist folgendens:
Wenn ich auf einen Listeneintrag klicke, sollen die drei Koordinatenattribute Nr, X oder Y eines Punktes (P1,P2,P3,P4) in den Textboxen des gewünschten Punktes erscheinen. Ich konnte immerhin schon einen kleinen Teilerfolg verzeichen, jedoch wird dann in jede Textbox von Punkt 1 bis 4 die gleiche Koordinate geschrieben.
[Anhang: Bild 2]
Als nächstes habe ich mir überlegt, dass ganze, abhängig davon wo der Cursor gerade liegt (in einer der Textboxen eines Puntes), zu gestalte. Hierfür hab ich mir gedacht würde eine If-Schleife ganz gut passen und die sieht jetzt wie folgt aus:
Zur Erklärung was was ist:
y(), y(), nr() sind jeweils die Koordinateninformationen
yTemp, xTemp, nTemp sind die ausgewählten Koordinaten
Das Problem ist, das jetzt gar nichts mehr passiert. Vielleicht kann mir ja einer von euch etwas auf die Sprünge helfen.
Vielen Dank schon ein Mal fürs lesen.
Gruß Bill
Ich versuche mich seit einiger Zeit an Visual Basic. Aktuell möchte ich ein kleines Programm schreiben, mit dem ich 2-Dimensionale Koordiaten aus einer Textdatei einlesen kann ( in eine Listbox). Das klappt auch so weit. Anschließend soll man vier beliebige Koordinatenpärchen aus der Listbox auswählen können, um den Schnittpunkt der zwei Geraden, die von den ausgewählten Punkten gebildet werden, zu berechnen. Das wie folgt aussieht:
[Anhang: Bild 1]
Mein Problem ist folgendens:
Wenn ich auf einen Listeneintrag klicke, sollen die drei Koordinatenattribute Nr, X oder Y eines Punktes (P1,P2,P3,P4) in den Textboxen des gewünschten Punktes erscheinen. Ich konnte immerhin schon einen kleinen Teilerfolg verzeichen, jedoch wird dann in jede Textbox von Punkt 1 bis 4 die gleiche Koordinate geschrieben.
[Anhang: Bild 2]
Als nächstes habe ich mir überlegt, dass ganze, abhängig davon wo der Cursor gerade liegt (in einer der Textboxen eines Puntes), zu gestalte. Hierfür hab ich mir gedacht würde eine If-Schleife ganz gut passen und die sieht jetzt wie folgt aus:
Zur Erklärung was was ist:
y(), y(), nr() sind jeweils die Koordinateninformationen
yTemp, xTemp, nTemp sind die ausgewählten Koordinaten
VB.NET-Quellcode
- Private Sub LstPunkte_SelectedIndexChanged(ByVal sender As System.Object, _
- ByVal e As System.EventArgs) Handles LstPunkte.SelectedIndexChanged
- Dim i As Integer
- Try
- ReDim Preserve yTemp(nTemp)
- ReDim Preserve xTemp(nTemp)
- i = LstPunkte.SelectedIndex
- yTemp(nTemp) = y(i)
- xTemp(nTemp) = x(i)
- nTemp = nTemp + 1
- If Cursor.Current Is TxtP1.Text Or Cursor.Current Is TxtX1.Text Or Cursor.Current Is TxtY1.Text Then
- TxtP1.Text = CStr(nr(i))
- TxtY1.Text = CStr(y(i))
- TxtX1.Text = CStr(x(i))
- ElseIf Cursor.Current Is TxtP2.Text Or Cursor.Current Is TxtX2.Text Or Cursor.Current Is TxtY2.Text Then
- TxtP2.Text = CStr(nr(i))
- TxtY2.Text = CStr(y(i))
- TxtX2.Text = CStr(x(i))
- ElseIf Cursor.Current Is TxtP3.Text Or Cursor.Current Is TxtX3.Text Or Cursor.Current Is TxtY3.Text Then
- TxtP3.Text = CStr(nr(i))
- TxtY3.Text = CStr(y(i))
- TxtX3.Text = CStr(x(i))
- ElseIf Cursor.Current Is TxtP4.Text Or Cursor.Current Is TxtX4.Text Or Cursor.Current Is TxtY4.Text Then
- TxtP4.Text = CStr(nr(i))
- TxtY4.Text = CStr(y(i))
- TxtX4.Text = CStr(x(i))
- End If
- Catch ex As Exception
- MessageBox.Show(ex.Message, "Fehlerhinweis")
- End Try
- End Sub
Das Problem ist, das jetzt gar nichts mehr passiert. Vielleicht kann mir ja einer von euch etwas auf die Sprünge helfen.
Vielen Dank schon ein Mal fürs lesen.
Gruß Bill
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „BillFrankShepard“ ()