我创建了一个输入框来输入用户名,但卡在取消按钮上
Private Sub Form_Load()
fsUserName = UCase(InputBox("Please Enter your name.", "User Name", _
"dc"))
If fsUserName = "" Then
MsgBox "No name Entered." & Chr(13) & Chr(13) & _
"You must enter a name.", vbExclamation, "ERROR"
Form_Load
ElseIf VarType(fsUserName) = 0 Then 'If cancel clicked
cmdQuit_Click
End If
还有一种方法是,当单击窗体上的 X 按钮时,它会执行 cmdQuit_Click 以便如果用户单击命令按钮 Quit 或 X ,则运行 Quit 脚本。在退出脚本中有消息框和清理。
最佳答案
您可以使用 StrPtr()
检测是否点击了取消;
Dim fsUserName As String
fsUserName = InputBox("Please Enter your name.", "User Name", "dc")
If (StrPtr(fsUserName) = 0&) Then
MsgBox "Cancelled or X clicked"
ElseIf fsUserName = "" Then
MsgBox "No name Entered." & vbCr & "You must enter a name.", vbExclamation, "ERROR"
Else
fsUserName = UCase$(fsUserName)
MsgBox fsUserName
End If
如果你想在表单卸载时做一些事情,你可以使用
Form_Unload
事件或更好的Form_QueryUnload
在实际卸载之前触发的事件并允许您取消它。它还会告诉您为什么要卸载表单(如果单击红色 X,
UnloadMode
将为 0)使用“
Unload Me
”将引发这两个事件。编辑:调用
Form_Load
在 Form_Load
这样最终会填满堆栈,最好使用循环来查找丢失的用户名。
关于vb6 - 输入框取消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3123679/