导航:
论坛 -> DELPHI技术
斑竹:liumazi,sephil
作者:
ssyyp (ssyyp)
★☆☆☆☆
-
普通会员
2019/9/14 22:07:32
标题:
是不是没法将ctrl键注册成全局热键
浏览:646
加入我的收藏
楼主:
我是这样写的,但是没有用 RegisterHotKey(Handle, GlobalAddAtom('hotkey1'),0,VK_CONTROL); 如果写成F9又可以,写成F12又没法 RegisterHotKey(Handle, GlobalAddAtom('hotkey1'),0,VK_F9); 请大虾指点将ctrl设置成热键的方法,谢谢。
----------------------------------------------
-delphi仅仅是业余爱好,没有经过专业的学习,谢谢大家的热心帮助(* ̄︶ ̄)
作者:
2019/9/15 8:23:49
1楼:
F12又没法 若为一热键定义的击键己被其他热键所定义,则RegisterHotKey函数调用失败
----------------------------------------------
我打的是酱油,而不是别的什么油。 我灌的是口水,而不是别的什么水。 我聊的折腾不是那个不折腾的折腾。 我说的阿娇不是那个邓玉娇的阿娇。 3个代表,6个为什么,9个肠胃炎。 D性强的领导干部都不喜欢热比娅。 我特别要讲的是,屁民网黄色论坛是我经常上网必选的 网站之一
作者:
2019/9/15 8:24:51
2楼:
ctrl 似乎可以的,我看qq拼音输入法 按Ctrl键,能实现一个功能切换中英文,那应该也是热键的作用吧。
----------------------------------------------
我打的是酱油,而不是别的什么油。 我灌的是口水,而不是别的什么水。 我聊的折腾不是那个不折腾的折腾。 我说的阿娇不是那个邓玉娇的阿娇。 3个代表,6个为什么,9个肠胃炎。 D性强的领导干部都不喜欢热比娅。 我特别要讲的是,屁民网黄色论坛是我经常上网必选的 网站之一
作者:
2019/9/15 9:11:32
3楼:
去搜索LowLevelKeyHook,WH_KEYBOARD_LL,用低级键盘钩子做。
----------------------------------------------
简单做人,认真做事。
作者:
2019/9/15 11:34:57
4楼:
m_nHotKeyId: ATOM; /// 热键id 注册: m_nHotKeyId := GlobalAddAtom(...); if (0 = m_nHotKeyId) then RaiseLastOSError(); var bResult: BOOL := RegisterHotKey(HANDLE, m_nHotKeyId, MOD_CONTROL, VK_CONTROL); if (not bResult) then RaiseLastOSError(); ... 处理: if (wParam = m_nHotKeyId) then begin showmessage(...); end; 反注册: UnRegisterHotKey(HANDLE, m_nHotKeyId); GlobalDeleteAtom(m_nHotKeyId);
----------------------------------------------
--
作者:
ssyyp (ssyyp)
★☆☆☆☆
-
普通会员
2019/9/15 13:18:55
5楼:
哦哦 RegisterHotKey(HANDLE, m_nHotKeyId, MOD_CONTROL, VK_CONTROL) 这个可以的; 低级键盘钩子有点复杂,功力不够啊。 感谢楼上的各位提供的方法!
----------------------------------------------
-delphi仅仅是业余爱好,没有经过专业的学习,谢谢大家的热心帮助(* ̄︶ ̄)