2008/04/04
프로그램에 시스템 Hotkey 붙이기
프로그램에 시스템 Hotkey를 연결하여 언제 어디서나 프로그램을 호출하거나 특정 기능을 동작 시킬 수 있다.
Hotkey를 사용하기 위한 API 함수이다.
시스템에 유일한 아이디를 만들고 핫키를 할당하면 된다.
RegisterHotkey 사용 방법
Original Post : http://neodreamer-dev.tistory.com/88
Hotkey를 사용하기 위한 API 함수이다.
ATOM GlobalAddAtom(
LPCTSTR lpString
);
BOOL RegisterHotKey(
HWND hWnd,
int id,
UINT fsModifiers,
UINT vk
);
BOOL UnregisterHotKey(
HWND hWnd,
int id
);
시스템에 유일한 아이디를 만들고 핫키를 할당하면 된다.
///////////////////////////////////////////////////////////////
// Header
// 시스템 Hotkey ID
ATOM atm;
// WM_HOTKEY message 핸들러 함수
afx_msg LRESULT OnHotkey(WPARAM wparam, LPARAM lparam);
// 핸들러 함수 매핑
BEGIN_MESSAGE_MAP
ON_MESSAGE(WM_HOTKEY, OnHotkey)
///////////////////////////////////////////////////////////////
// Source
::OnInitDialog()
// 시스템에 유일한 ID 생성
atm = GlobalAddAtom( _T("MyHotkey") );
// 시스템 Hotkey 등록
RegisterHotKey( this->m_hWnd, atm, MOD_WIN, VK_SPACE );
::OnClose()
// 시스템 Hotkey 해제
UnregisterHotKey( this->m_hWnd, atm );
// Hotkey 핸들러 함수
LRESULT CGlobalHKeyDlg::OnHotkey(WPARAM wparam, LPARAM lparam)
{
AfxMessageBox( _T("Global Hotkey") );
return 0;
}
RegisterHotkey 사용 방법
BOOL RegisterHotKey(
HWND hWnd,
int id,
UINT fsModifiers,
UINT vk
);
HWND hWnd
핫키를 할당하고자 하는 윈도우 핸들
int id
핫키 아이디
UINT fsModifiers
핫키에 사용될 조합키
MOD_ALT ALT key
MOD_CONTROL CTRL key
MOD_SHIFT SHIFT key
MOD_WIN WINDOW key
UINT vk
핫키
Original Post : http://neodreamer-dev.tistory.com/88
Labels:
Global Hotkey
,
GlobalAddAtom
,
Hotkey
,
RegisterHotkey
,
TistoryOldPost
,
UnregisterHotKey
,
WM_HOTKEY
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment