|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
Creating a Hot-Key Control
The following function creates a hot-key control, uses the HKM_SETRULES and HKM_SETHOTKEY messages to initialize it, and returns a handle to the control. This hot-key control does not allow the user to choose a hot key that is a single unmodified key, nor does it permit the user to choose only SHIFT and a key. (These rules effectively prevent the user from choosing a hot key that might be accidentally entered while typing text.)
// InitializeHotkey - creates a hot-key control and sets rules // and default settings for it. // Returns the handle of the hot-key control. // hwndDlg - handle of the parent window (dialog box) // // Global variable // g_hinst - handle of the application instance extern HINSTANCE g_hinst; HWND WINAPI InitializeHotkey(HWND hwndDlg) { // Ensure that the common control DLL is loaded. InitCommonControls(); hwndHot = CreateWindowEx(
0, // no extended styles HOTKEY_CLASS, // class name "", // no title (caption) WS_CHILD | WS_VISIBLE, // style 10, 10, // position 200, 20, // size hwndDlg, // parent window NULL, // uses class menu g_hinst, // instance
NULL // no WM_CREATE parameter ); SetFocus(hwndHot); // Set rules for invalid key combinations. If the user // does not supply a modifier key, use ALT as a modifier. // If the user supplies SHIFT as a modifier key, use // SHIFT + ALT instead. SendMessage(hwndHot, HKM_SETRULES, (WPARAM) HKCOMB_NONE | HKCOMB_S, // invalid key combinations MAKELPARAM(HOTKEYF_ALT, 0)); // add ALT to invalid entries
// Set CTRL + ALT + A as the default hot key for this window. // 0x41 is the virtual-key code for 'A'. SendMessage(hwndHot, HKM_SETHOTKEY, MAKEWORD(0x41, HOTKEYF_CONTROL | HOTKEYF_ALT), 0); return hwndHot; }
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
Создание Управления Hot-Key
Следующее функции создает горячее-ключевое управление, использует HKM_SETRULES и сообщения HKM_SETHOTKEY, чтобы инициализировать это и возвращает ручку на управление. Это горячее-ключевое управление не позволяет потребителя, чтобы выбирать горячий ключ, который - единственный unmodified ключ ни делает это разрешать потребителя, чтобы выбирать только ПЕРЕМЕЩЕНИЕ и ключ. (Эти правила эффективно мешают потребителя чтобы выбирать горячий ключ, который мог случайно быть введен при занесении текста.)
// InitializeHotkey - СОЗДАЕТ горячее-ключевое управление и устанавливает правила // и встроенную обстановку для этого. // Возврат ручка горячего-ключевого управления. // hwndDlg - Ручка родительского окна (диалоговый ящик) // // Глобальная переменная // g_hinst - ручка прикладного примера extern g_hinst HINSTANCE; HWND WINAPI InitializeHotkey(HWND hwndDlg) { // Проверьте, что общее управление DLL загружено. InitCommonControls(); hwndHot = CreateWindowEx(
0, // никакие расширенные стили HOTKEY_CLASS, // имя класса "", // никакое название (заголовок) WS_CHILD | WS_VISIBLE, // стиль 10, 10, // позиция 200, 20, // размер hwndDlg, // родительское окно НЕДЕЙСТВИТЕЛЬНОЕ, // использует меню класса g_hinst, // пример
НЕДЕЙСТВИТЕЛЬНЫЙ // никакой параметр WM_CREATE ); SetFocus(hwndHot); // Установившее правила для неправильных ключевых комбинаций. Если пользователь // не поставляет клавишу модификатора, используйте ALT как модификатор. // Если пользователь поставляет СДВИГ как клавишу модификатора, используйте // СДВИГАТЬ + ALT взамен. SendMessage(hwndHot, HKM_SETRULES, (WPARAM) HKCOMB_NONE | HKCOMB_S, // НЕПРАВИЛЬНЫЕ ключевые комбинации MAKELPARAM(HOTKEYF_ALT, 0)); // добавьте ALT к неправильным данным
// Установившее CTRL + ALT + как по умолчанию горячая клавиша для этого окна. // 0x41 - виртуальный-ключевой код для 'A. SendMessage(hwndHot, HKM_SETHOTKEY, MAKEWORD(0x41, HOTKEYF_CONTROL | HOTKEYF_ALT), 0); возвращайте hwndHot; }
|
|
|
|
| |