Hallo zusammen,
ich habe eine Frage bezüglich eines mehrdimensionalen Arrays in einer TextBox.
Durch diesen Code lass ich in der TextBox das sogenannte "Spielfeld" anzeigen (Spiel: französisches Solitair - Nein, nicht das Kartenspiel, sondern das Brettspiel)
Spoiler anzeigen
Als nächsten Schritt möchte ich nun einen Spielzug implementieren.
Das bedeutet:
- Abfrage Stein Zeile
- Abfrage Stein Spalte
- Abfrage Richtung
Nachdem ich diese Elemente mit einer Inputbox abgefragt habe ist nun meine Frage, wie ich es hinbekomme, dass mir genau dieser Wert überschrieben wird?
Also aus z.B. Spielfeld(3,4) ["O"] soll [" "] werden, da dieser Stein bewegt wird und das Feld, bzw. das Array " " als Inhalt bekommt.
Versuch:
Spoiler anzeigen
Der Inhalt der TextBox bleibt der gleiche. Lediglich ein weiteres "O" wird am Ende der TextBox hinzugefügt.
Daher meine Frage, wie kann ich ein einzelner Array-Inhalt eines mehrdimensionales Array "überschreiben"?
Danke für die Hilfe!
Beste Grüße,
xph4nt4syx
ich habe eine Frage bezüglich eines mehrdimensionalen Arrays in einer TextBox.
Durch diesen Code lass ich in der TextBox das sogenannte "Spielfeld" anzeigen (Spiel: französisches Solitair - Nein, nicht das Kartenspiel, sondern das Brettspiel)
VB.NET-Quellcode
- s = ""
- For i As Integer = 0 To maxZeilen - 1
- For j As Integer = 0 To maxSpalten - 1
- Spielfeld(i, j) = "O" & " "
- If i = 3 And j = 3 Then
- Spielfeld(i, j) = " "
- End If
- For k As Integer = 0 To 1
- For l As Integer = 0 To 1
- Spielfeld(k, l) = " "
- Next
- Next
- For k As Integer = 5 To 6
- For l As Integer = 5 To 6
- Spielfeld(k, l) = " "
- Next
- Next
- For k As Integer = 5 To 6
- For l As Integer = 0 To 1
- Spielfeld(k, l) = " "
- Next
- Next
- For k As Integer = 0 To 1
- For l As Integer = 5 To 6
- Spielfeld(k, l) = " "
- Next
- Next
- s = s & Spielfeld(i, j)
- Next
- s = s & vbCrLf
- Next
- TextBox1.Text = s
Als nächsten Schritt möchte ich nun einen Spielzug implementieren.
Das bedeutet:
- Abfrage Stein Zeile
- Abfrage Stein Spalte
- Abfrage Richtung
Nachdem ich diese Elemente mit einer Inputbox abgefragt habe ist nun meine Frage, wie ich es hinbekomme, dass mir genau dieser Wert überschrieben wird?
Also aus z.B. Spielfeld(3,4) ["O"] soll [" "] werden, da dieser Stein bewegt wird und das Feld, bzw. das Array " " als Inhalt bekommt.
Versuch:
VB.NET-Quellcode
- SpielsteinX = InputBox("x?")
- SpielsteinY = InputBox("y?")
- Richtung = InputBox("links, rechts, oben, unten?")
- If Richtung = "rechts" Then
- Spielfeld(SpielsteinX, SpielsteinY) = " "
- Spielfeld(SpielsteinX + 1, SpielsteinY) = " "
- Spielfeld(SpielsteinX + 2, SpielsteinY) = "O"
- End If
- TextBox1.Text = s & Spielfeld(SpielsteinX, SpielsteinY) & Spielfeld(SpielsteinX + 1, SpielsteinY) & Spielfeld(SpielsteinX + 2, SpielsteinY)
Der Inhalt der TextBox bleibt der gleiche. Lediglich ein weiteres "O" wird am Ende der TextBox hinzugefügt.
Daher meine Frage, wie kann ich ein einzelner Array-Inhalt eines mehrdimensionales Array "überschreiben"?
Danke für die Hilfe!
Beste Grüße,
xph4nt4syx
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „xph4nt4syx“ ()