Hallo Com,
möchte gern mehrere Objekte (Rectangles), welche in einer For Schleife generiert werden, einzeln clickbar machen.
Habe mich dazu schon dumm und dusselig im www gesucht und wäre für Links o.a. sehr dankbar.
Mein Code:
In diesem Fall bekommt immer nur das letzte Objekt das Click-Event.
möchte gern mehrere Objekte (Rectangles), welche in einer For Schleife generiert werden, einzeln clickbar machen.
Habe mich dazu schon dumm und dusselig im www gesucht und wäre für Links o.a. sehr dankbar.
Mein Code:
VB.NET-Quellcode
- Private rect As Rectangle
- Private pen As Pen = Pens.Black
- Public Sub New()
- InitializeComponent()
- AddHandler Click, AddressOf Form1_Click
- End Sub
- Protected Overrides Sub OnPaint(e As PaintEventArgs)
- MyBase.OnPaint(e)
- Dim x As Integer
- For x = 0 To 1000 Step 55
- Dim blackPen As New Pen(Color.Black, 1)
- rect = New Rectangle(x, 0, 50, 50)
- e.Graphics.DrawRectangle(blackPen, rect)
- Next
- End Sub
- Private Sub Form1_Click(sender As Object, e As EventArgs)
- Dim cursorPos As Point = Me.PointToClient(Cursor.Position)
- If rect.Contains(cursorPos) Then
- MsgBox("IN")
- Else
- MsgBox("OUT")
- End If
- Invalidate()
- End Sub
In diesem Fall bekommt immer nur das letzte Objekt das Click-Event.