VB求教:先按钮A,再按钮B。这时触发一个事件。怎么做到??
大概意思是:我先按一个按钮,再按另外一个按钮。这是要触发串口发送一个代码。但是程序里不光是两个按钮。许多种组合存在。...
大概意思是:我先按一个按钮,再按另外一个按钮。这是要触发串口发送一个代码。
但是程序里不光是两个按钮。许多种组合存在。 展开
但是程序里不光是两个按钮。许多种组合存在。 展开
2个回答
展开全部
Dim i As Integer
Private Sub a_Click()
i = 1
End Sub
Private Sub b_Click()
If i = 1 Then
MsgBox "触发事件"
End If
i = 0
End Sub
如果是多按钮,可使用不同的数作为变量i在各个按钮中的值;
如按a后,再按b,最后按c:
Dim i As Integer
Private Sub a_Click()
i = 2
End Sub
Private Sub b_Click()
If i = 2 Then
i = 3
End If
End Sub
Private Sub c_Click()
If i = 3 Then
MsgBox "触发事件"
End If
i = 7
End Sub
如果没有顺序,有组合,可用素数求和,对和进行判断,但需注意:其他素数和不等于该素数。
Private Sub a_Click()
i = 1
End Sub
Private Sub b_Click()
If i = 1 Then
MsgBox "触发事件"
End If
i = 0
End Sub
如果是多按钮,可使用不同的数作为变量i在各个按钮中的值;
如按a后,再按b,最后按c:
Dim i As Integer
Private Sub a_Click()
i = 2
End Sub
Private Sub b_Click()
If i = 2 Then
i = 3
End If
End Sub
Private Sub c_Click()
If i = 3 Then
MsgBox "触发事件"
End If
i = 7
End Sub
如果没有顺序,有组合,可用素数求和,对和进行判断,但需注意:其他素数和不等于该素数。
展开全部
'每个按钮下都调用子程序CmdRotate(CmdStr as String)
Private CmdIndex(1) As String
Private Sub CmdRotate(CmdStr As String)
Dim TempString As String
CmdIndex(0) = CmdIndex(1)
CmdIndex(1) = CmdStr
End Sub
Private Sub A_Click()
Call CmdRotate("A")
End Sub
Private Sub B_Click()
Call CmdRotate("B")
If CmdIndex(0) = "A" Then
'这里触发串口发送一个代码
End If
End Sub
Private Sub C_Click()
Call CmdRotate("C")
End Sub
Private CmdIndex(1) As String
Private Sub CmdRotate(CmdStr As String)
Dim TempString As String
CmdIndex(0) = CmdIndex(1)
CmdIndex(1) = CmdStr
End Sub
Private Sub A_Click()
Call CmdRotate("A")
End Sub
Private Sub B_Click()
Call CmdRotate("B")
If CmdIndex(0) = "A" Then
'这里触发串口发送一个代码
End If
End Sub
Private Sub C_Click()
Call CmdRotate("C")
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询