我是VB6的新手,并且在做大学项目时可以告诉我如何在不使用任何命令按钮或控制工具的情况下关闭我的表单。
每当应用程序处于活动状态或表单处于活动状态时,用户按下“W”键而不是表单应该“结束”/“卸载” 我该怎么做?
我试过这些代码:
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 27 Then
Unload Me
End If
End Sub
但它没有用。
答案 0 :(得分:2)
您需要确保将表单的KeyPreview
属性设置为True
,否则您的表单将不会处理KeyStrokes。我也会测试大小写。
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 87 Or KeyAscii = 119 Then '87 is upper case 119 is lower case
Unload Me
End If
End Sub
如果您想检查修改键,例如Control和Alt,我会改用Form KeyDown
EventHandler。
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If (Shift And 1) Then ' Test for Shift Key
If (KeyCode = 87 Or KeyCode = 119) Then
Unload Me
End If
End If
If (Shift And 2) Then 'Test for Control Key
If (KeyCode = 87 Or KeyCode = 119) Then
Unload Me
End If
End If
If (Shift And 4) Then 'Test for Alt Key
If (KeyCode = 87 Or KeyCode = 119) Then
Unload Me
End If
End If
End Sub
答案 1 :(得分:2)
Alt-F4
是VB6中表单关闭的内置热键,与大多数符合Windows应用程序指南的程序一样。
人们通常还有一个菜单选项“退出”并将其加速键设置为“x”,因此您可能有一个带有“F”的文件菜单和一个带有“x”的选项“退出”,用户可以键入Alt-F, x退出。有关此示例,请参阅记事本或数百个其他程序。
是的,您可以使用hackish方法,但为什么?