|
| |

VB.NET - Fortgeschrittene| Re: Wabenförmiges Spielfeld | |  | | Autor: spike24 | | Datum: 29.01.06 19:53 |
| also ich habe absolut keinen tau wie man ein 6-eck macht
allerdings kann ich Dir ne bauanleitung für ein Viereckiges spielfeld geben, bei dem jede zweite zeile verschoben ist, was genau gesehen ja das gleiche ist, nur das es keine 6-eckigen felder hat
zuerst brauchst Du ein Feld
ich würde ein eigenes Usercontrol nehmen
dieses Usercontrol hat die eigenschaft Size,
jetzt braucht es noch eine eigenschaft Reihe, wenn der wert der in diese eigenschaft übergeben, gerade ist, ist es die verschobene zeile, dann noch eine eigenschaft für Spalte um zu bestimmen wie weit nach rechts das feld verschoben werden muss
und dann hast Du einfach nur ein mehrdimensionales Array in dem Du die Controls speicherst und die controls berechnen die position selbst
so würds ich machen
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
Dim arField(9, 9) As MyGameField
For y As Integer = 0 To 9
For x As Integer = 0 To 9
arField(x, y) = New MyGameField(x, y)
Me.Controls.Add(arField(x, y))
Next
Next
End Sub
Public Class MyGameField
Inherits Panel
Public Sub New()
MyBase.New()
Me.Size = New Size(50, 50)
m_Row = 0
m_Column = 0
Me.BackColor = System.Drawing.Color.Green
Me.BorderStyle = BorderStyle.Fixed3D
End Sub
Public Sub New(ByVal Column As Integer, ByVal Row As Integer)
Me.New()
m_Row = Row
m_Column = Column
SetLocation()
End Sub
Private m_Row As Integer
Public ReadOnly Property Row() As Integer
Get
Return m_Row
End Get
End Property
Private m_Column As Integer
Public ReadOnly Property Column() As Integer
Get
Return m_Column
End Get
End Property
Private Sub SetLocation()
Me.Location = New Point(m_Column * 50 + IIf(m_Row Mod 2, 25, 0), _
m_Row * 50)
End Sub
End Class einfach nur mal in ne form reinkopieren und dann brauchst Du den ganzen dreck nur mehr 6-eckig bringen
ich hab ein panel genommen damit mans besser sieht weil ein panel einen borderstyle hat 0 |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|