[英]Which auto generated picturebox was clicked? VB.net
我有以下代碼。 我試圖找出單擊了64個圖片框中的哪個:
For i As Integer = 1 To 8
For j As Integer = 1 To 8
SpilleBræt(i, j) = New PictureBox 'Opretter picturebox
If (i + j) Mod 2 = 1 Then
Me.SpilleBræt(i, j).BackgroundImage = Skak.My.Resources.DarkTile
Else
Me.SpilleBræt(i, j).BackgroundImage = Skak.My.Resources.LightTile
End If
'Placering, størrelse, m.v.
Me.SpilleBræt(i, j).Location = New System.Drawing.Point((i - 1) * 103, (j - 1) * 103)
Me.SpilleBræt(i, j).Size = New System.Drawing.Size(100, 100)
Me.SpilleBræt(i, j).Name = "SpilleBrik" & i & j
Me.PanelSpilleBræt.Controls.Add(Me.SpilleBræt(i, j))
Next j
Next i
謝謝。
為了處理單擊事件,您需要的第一件事是單擊處理程序。 可能像這樣簡單:
Private Sub PictureBox_Click(ByVal sender As Object, ByVal e As EventArgs)
' Do something in here
End Sub
創建PictureBox
控件時,將處理程序綁定到其click事件:
AddHandler Me.SpilleBræt(i, j).Click, AddressOf PictureBox_Click
Me.PanelSpilleBræt.Controls.Add(Me.SpilleBræt(i, j))
用戶應該在PictureBox_Click
單擊PictureBox
時調用PictureBox_Click
方法。 在該方法中, sender
是被單擊的元素:
Private Sub PictureBox_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim clickedBox As PictureBox
clickedBox = CType(sender, PictureBox)
' clickedBox is the element which was clicked
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.