1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
UINT (UINT fsModifiers) { if ((fsModifiers & MOD_SHIFT) && !(fsModifiers & MOD_ALT)) { fsModifiers &= ~MOD_SHIFT; fsModifiers |= HOTKEYF_SHIFT; } else if (!(fsModifiers & MOD_SHIFT) && (fsModifiers & MOD_ALT)) { fsModifiers &= ~MOD_ALT; fsModifiers |= HOTKEYF_ALT; } return fsModifiers; }
UINT HotkeyToMod(UINT fsModifiers) { if ((fsModifiers & HOTKEYF_SHIFT) && !(fsModifiers & HOTKEYF_ALT)) { fsModifiers &= ~HOTKEYF_SHIFT; fsModifiers |= MOD_SHIFT; } else if (!(fsModifiers & HOTKEYF_SHIFT) && (fsModifiers & HOTKEYF_ALT)) { fsModifiers &= ~HOTKEYF_ALT; fsModifiers |= MOD_ALT; } return fsModifiers; }
void CtesseractDemoDlg::OnBnClickedBtnSavehotkey() { WORD wVirtualKeyCode; WORD wModifiers; m_hotkey.GetHotKey(wVirtualKeyCode, wModifiers); if (wVirtualKeyCode && wModifiers) { UnregisterHotKey(GetSafeHwnd(), m_iHotKeyId);
wModifiers = HotkeyToMod(wModifiers); if (0 == RegisterHotKey(GetSafeHwnd(), m_iHotKeyId, wModifiers | MOD_NOREPEAT, wVirtualKeyCode)) { OutputDebugString(_T("register hotkey failed.n")); } } }
|
近期评论