我正在大学学习VB.Net,我正试图找到一种方法来检查用户在vb.net表单中点击的按钮。我目前遇到的问题是我有一个10x10按钮的数组,在代码中动态创建。
For x = 1 To 10
For y = 1 To 10
Me.Width = 720
Me.Height = 720
boxarray(counter) = New Button
boxarray(counter).Name = "Box" & x
boxarray(counter).Location = New Point(x * 48, y * 48)
boxarray(counter).Width = Me.Width / 15
boxarray(counter).Height = Me.Height / 15
boxarray(counter).Visible = True
boxarray(counter).Cursor = Cursors.Hand
boxarray(counter).PerformClick()
Me.Controls.Add(boxarray(counter))
counter = counter + 1
Next
Next
但是我需要检查用户点击的按钮,而不需要为每个按钮创建可以按下的子程序。
答案 0 :(得分:4)
首先添加一个处理程序
e.g。
Private Sub ArrayButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Button clicks here
End Sub
然后更改boxarray(counter).PerformClick()
(模拟单击按钮)
到
AddHandler boxarray(counter), AddressOf ArrayButton_Click
现在所有按钮都链接到一个处理程序。 课程现在你需要知道点击了哪一个。 将标签属性设置为((x - 1)* 10)+ y - 1将是单向
然后你可以将发送者强制转换为Button。抓取标签并将其转换回处理程序中的x和y