检查动态按钮?

时间:2013-06-19 21:52:20

标签: vb.net visual-studio-2010

我正在大学学习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

但是我需要检查用户点击的按钮,而不需要为每个按钮创建可以按下的子程序。

1 个答案:

答案 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