|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
Retrieving and Setting a Hot Key
After the user has chosen a hot key, an application should retrieve the hot key from the hot-key control by using the HKM_GETHOTKEY message. This message retrieves a 16-bit value that contains the virtual-key code and modifier keys describing the hot key.
The following function retrieves a key combination from a hot-key control and then uses the WM_SETHOTKEY message to set a global hot key. Note that you cannot set a global hot key for a window that has the WS_CHILD window style.
// ProcessHotkey - retrieves the hot key from the hot-key control and // sets it as the hot key for the application's main window. // Returns TRUE if successful or FALSE otherwise. // hwndHot - handle of the hot-key control // hwndMain - handle of the main window BOOL WINAPI ProcessHotkey(HWND hwndHot, HWND hwndMain) { WORD wHotkey; UINT iSetResult; // Retrieve the hot key (virtual-key code and modifiers). wHotkey = SendMessage(hwndHot, HKM_GETHOTKEY, 0, 0);
// Use the result as wParam for WM_SETHOTKEY. iSetResult = SendMessage(hwndMain, WM_SETHOTKEY, wHotkey, 0); switch (iSetResult) { case 2: // WM_SETHOTKEY succeeded MessageBox(NULL, "Hot key previously assigned", "Okay", MB_OK); return TRUE; case 1: // WM_SETHOTKEY succeeded return TRUE; case 0: MessageBox(NULL, "Invalid window for hot key",
"Error", MB_OK); return FALSE; case -1: MessageBox(NULL, "Invalid hot key", "Error", MB_OK); return FALSE; default: MessageBox(NULL, "Unknown error", "Error", MB_OK); return FALSE; } }
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
Поиск и Установка Горячего Ключа
После того, как потребитель выбрал горячий ключ, приложение должно извлечь горячий ключ с горячего-ключевого управления используя сообщение HKM_GETHOTKEY. Это сообщение извлекает 16- битовую величину, которая содержит виртуальные-ключевые кодовые и ключи модификатора, описывающие горячий ключ.
Следующее функции извлекает ключевую комбинацию с горячего-ключевого управления затем использует сообщение WM_SETHOTKEY, чтобы устанавливать глобальный горячий ключ. Отметьте, что Вы не можете установить глобальный горячий ключ для окна, что имеет стиль окна WS_CHILD.
// ProcessHotkey - ИЗВЛЕКАЕТ горячий ключ с горячего-ключевого управления и // комплекты это как горячий ключ для прикладного основного окна. // ИСТИНА Возврата если успешный или ЛОЖНЫЙ в противном случае. // hwndHot - Ручка горячего-ключевого управления // hwndMain - ручка основного окна BOOL WINAPI ProcessHotkey(HWND hwndHot, HWND hwndMain) { СЛОВО wHotkey; UINT iSetResult; // Извлеките горячий ключ (виртуальный-ключевой код и модификаторы). wHotkey = SendMessage(hwndHot, HKM_GETHOTKEY, 0, 0);
// Использование результат как wParam для WM_SETHOTKEY. iSetResult = SendMessage(hwndMain, WM_SETHOTKEY, wHotkey, 0); ключ (iSetResult) { случай 2: // WM_SETHOTKEY получал MessageBox(НЕДЕЙСТВИТЕЛЬНЫЙ, "Горячий ключ прежде назначал", "Окей", MB_OK); возвращайтесь ВЕРНО; случай 1: // WM_SETHOTKEY получал обратную ИСТИНУ; случай 0: MessageBox(НЕДЕЙСТВИТЕЛЬНОЕ, "Неправильное окно для горячего ключа",
"Ошибка", MB_OK); обратная ЛОЖЬ; случай -1: MessageBox(НЕДЕЙСТВИТЕЛЬНЫЙ, "Неправильный горячий ключ", "Ошибка", MB_OK); обратная ЛОЖЬ; невыполнение: MessageBox(НЕДЕЙСТВИТЕЛЬНАЯ, "Неизвестная ошибка", "Ошибка", MB_OK); обратная ЛОЖЬ; } }
|
|
|
|
| |