我是vb.net的新手。我有一个表格的20个按钮。当我点击任意一个按钮时,应该更改颜色。
我可以为所有按钮编码,如下所示。但我需要一个函数,当我调用该函数时,颜色应该改变。请帮帮我,给我完整的编码
Private Sub btnR1X1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnR1X1.Click
If (btnR1X1.BackColor = Color.White) Then
btnR1X1.BackColor = Color.Gray
ElseIf (btnR1X1.BackColor = Color.Gray) Then
btnR1X1.BackColor = Color.White
End If
End Sub
答案 0 :(得分:1)
我假设您使用的是VB.Net。假设是这种情况,您应该编辑您的问题以删除vb6标记。
您可以编写一个函数来切换任何控件的BackColor。
Private Sub ToggleColor(ctrl As Control)
If ctrl.BackColor = Color.White Then ctrl.BackColor = Color.Gray Else ctrl.BackColor = Color.White
End Sub
你可以从Button的点击处理程序中调用该函数,就像这样
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
ToggleColor(CType(sender, Control))
End Sub
但是,如果在单击任何按钮时要执行的操作是切换BackColor,则可以对每个按钮的单击事件使用单个事件处理程序。
Private Sub Buttons_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click, Button3.Click, Button4.Click 'etc
Dim ctrl as Control = CType(sender, Control)
If ctrl.BackColor = Color.White Then ctrl.BackColor = Color.Gray Else ctrl.BackColor = Color.White
End Sub