VB 的问题!简单

来源:百度知道 编辑:UC知道 时间:2024/05/10 19:20:46
我想是Form1 快捷键F10隐藏 再按F10显示 或者F11显示 都可以
KeyPreview属性设为True

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF10 Then
hide
End If
End Sub
这只能F10隐藏 怎样才能利用快捷键再显示出窗体?
其实就是 按下 F10 可以是窗体FORM1隐藏 再按F11 Form就又显示出来了 怎样才能做到?
第2个的老兄 我看的一头雾水。 我新手。
能说的简单点吗?

楼上的方法可以,但得的捕获系统键盘消息才能得到效果,Hook挂在自己窗口上是得不到键盘消息,在窗口失去焦点后系统是不把键盘消息发送给窗体的。要挂到系统上,那HOOK处理过程必须在DLL文件里,这个工程就大了,其实,有个简单的方法,可以使用RegisterHotKey注册热键的方法实现。

VB6环境里建立个标准EXE工程,在工程里添加模块,贴入以下代码.

Public Declare Function RegisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
Public Declare Function UnregisterHotKey Lib "user32" (ByVal hwnd As Long, ByVal id As Long) As Long

Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVa