也就是说我想在程序打开的情况下(不一定获得焦点)按某组合键后,自动弹出密码窗口,输入正确后才可返回程序。
还请各位大虾帮忙!谢谢!!!
还请各位大虾帮忙!谢谢!!!
解决方案 »
- 窗体之间如何传递值?
- 十万火急!各位高手,帮帮忙吧!
- 如何得到一个菜单的所有菜单项
- 恭喜VB版rainstormmaster荣获2004年1月微软MVP!!
- 我现在是用HTML写的程序帮助,用VB怎么调用网页?
- 请教:怎么样将vb中的Form 变成 MDI Form ???? 急急急!!谢谢!
- ******怎么办**********数据库相关********
- 我后悔,买摩托骡拉手机, 你千万当心!!!
- 为什么我的程序在英文版VB6下可以编译生成EXE文件,而在中文版VB6下却不行呢?
- 只有一行语言的错误~挑出毛病就送分~大家快来抢分吧~~~~~~~~~~~```
- 求教各位高手关于日期查询的问题??<在线等>
- ■■■■■■请教 怎样得到dcom配置中探出的网络计算机选择窗口
wHotkey = (HOTKEYF_ALT) * (2 ^ 8) + 65
l = SendMessage(Me.hwnd, WM_SETHOTKEY, wHotkey, 0)
则定义了Alt+A为快捷键
' 声明API函数
Private Declare Function RegisterHotKey Lib "user32" (ByVal hWnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
Private Declare Function UnregisterHotKey Lib "user32" (ByVal hWnd As Long, ByVal id As Long) As Long
Private Declare Function PeekMessage Lib "user32" Alias "PeekMessageA" (lpMsg As Msg, ByVal hWnd As Long, ByVal wMsgFilterMin As Long, ByVal wMsgFilterMax As Long, ByVal wRemoveMsg As Long) As Long
Private Declare Function WaitMessage Lib "user32" () As Long
' 声明结构
Private Type POINTAPI
x As Long
y As Long
End Type
Private Type Msg
hWnd As Long
Message As Long
wParam As Long
lParam As Long
time As Long
pt As POINTAPI
End Type
' 声明常数
Private Const MOD_ALT = &H1
Private Const MOD_CONTROL = &H2
Private Const MOD_SHIFT = &H4
Private Const PM_REMOVE = &H1
Private Const WM_HOTKEY = &H312Private HotKey_Fg As BooleanPrivate Sub Form_Load()
Dim Message As Msg
'注册 Ctrl+Y 为热键
RegisterHotKey Me.hWnd, &HBFFF&, MOD_CONTROL, vbKeyY
'RegisterHotKey Me.hWnd, &HBFF2&, MOD_CONTROL, vbKeyU
Me.Show
Form1.Hide
'等待处理消息
HotKey_Fg = False
Do While Not HotKey_Fg
'等待消息
WaitMessage
'检查是否热键被按下
If PeekMessage(Message, Me.hWnd, WM_HOTKEY, WM_HOTKEY, PM_REMOVE) Then
'打开计算器程序
Shell "calc.exe", vbNormalFocus
'Form1.Show 1
End If
'转让控制权,允许操作系统处理其他事件
DoEvents
Loop
End SubPrivate Sub Form_Unload(Cancel As Integer)
HotKey_Fg = True
'撤销热键的注册
Call UnregisterHotKey(Me.hWnd, &HBFFF&)
End Sub