熱鍵是全域性的,使用 api 註冊。
快捷鍵是區域性的,不使用 api ,只能在視窗啟用的時候使用。
#include
#include
using
namespace std;
intmain()
if(0==
registerhotkey
(null,2
, mod_control, vk_f2)
)// 訊息迴圈
msg msg =
;while
(getmessage
(&msg,
null,0
,0))
elseif(
2== msg.wparam)
break;}
default
:break;}
} cout <<
"finished."
<< endl;
return0;
}
#include
#include
using
namespace std;
// keycode 參考:
lresult callback __wndproc
(hwnd hwnd, uint msg, wparam wparam, lparam lparam)
return
defwindowproc
(hwnd, msg, wparam, lparam);}
intmain()
// 建立視窗
hwnd hwnd =
createwindowex
( ws_ex_topmost,
// 視窗擴充套件樣式:頂級視窗
l"lysm_class"
,// 視窗類名
l"lysm_title"
,// 視窗標題
// 視窗樣式:重疊視窗0,
// 視窗初始x座標0,
// 視窗初始y座標
800,
// 視窗寬度
600,
// 視窗高度0,
// 父視窗控制代碼0,
// 選單控制代碼
hins,
// 與視窗關聯的模組例項的控制代碼
0// 用來傳遞給視窗wm_create訊息);
if(hwnd ==0)
updatewindow
(hwnd)
;showwindow
(hwnd, sw_show)
;// 訊息迴圈(沒有會導致視窗卡死)
msg msg =
;while
(msg.message != wm_quit)
} cout <<
"finished."
<< endl;
getchar()
;end:
getchar()
;return0;
}
WinForm程式 註冊熱鍵快捷鍵切換
重寫defwndproc事件 region window 訊息捕獲 const int wm copydata 0x004a public struct copydatastruct dllimport user32 public static extern bool changewindowmes...
熱鍵與快捷鍵的區別
熱鍵和快捷鍵 hotkey and shortcut key 熱鍵是跟在功能選單後的帶下劃線的鍵,直接按下就可以,只有看到了才可以使用 快捷鍵一般為組合鍵,不需要看到選單後定義的快捷按鈕,直接按組合鍵即可實現其功能。熱鍵必須在能看見該熱鍵的情況下才有效,就是說如果是選單上的熱鍵,就要先彈出選單,才能...
RegisterHotKey註冊快捷鍵
bool registerhotkey hwnd hwnd,響應該熱鍵的視窗控制代碼 int id,該熱鍵的唯一標識 uint fsmodifiers,該熱鍵的輔助按鍵 uint vk 該熱鍵的鍵值 為了得到唯一標識,我們還將用到另乙個api函式 atom globaladdatom lpctstr...