| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > hotkeys |
| Автор: rith2 22.5.2009, 16:03 | ||||||
| Привет! Зарегал hotkey
Регистрирую
Все катит, но если в качестве uVirtKey использовать использовать клавишу модификатор (CTRL, SHIFT, ALT) - то hotkey не ловится
То есть в качестве второго параметра клавиши модификаторы никак нельзя использовать? Куча тем в гугле как юзать хоткиз, а ни однйо с моим вопросом |
| Автор: kami 22.5.2009, 17:40 |
| Что возвращает RegisterHotKey? |
| Автор: MetalFan 22.5.2009, 17:56 |
| kami, +1. а вообще на то они и модификаторы... хочешь "ловить" их, поставь хук. |
| Автор: rith2 22.5.2009, 18:03 | ||||||
* hWnd - окно, обрабатывающее сообщение WM_HOTKEY, * fsModifiers - модификаторы (MOD_ALT, MOD_CONTROL, MOD_SHIFT, MOD_WIN), * vk - виртуальный код клавиши (см. константы с префиксом VK_). Возвращает True , если данная комбинация не была зарегистрирована другим RegisterHotKey Добавлено через 1 минуту и 23 секунды
Ну да... просто в HotKeys уже разобрался, а по хукам пока не все понятно, вот думал пойти простой дорогой |
| Автор: MetalFan 22.5.2009, 20:34 |
| + если False, то что возвращает GetLastError или SysErrorMessage(GetLastError) |
| Автор: rith2 23.5.2009, 04:59 | ||||||
Возвращает True - то есть такая комба еще не зарегана. Что любопытно, если условие сделать таким
а если
|
| Автор: MetalFan 23.5.2009, 12:13 |
| так, автор, что-то каша какая-то получается. я думал, что у тебя регистрация не проходит... оказывается проходит. тогда вопрос: WM_HOTKEY вообще приходит? если да, то зачем в WM_HOTKEY опять кнопки проверять? достаточно сравнить wParam с идентификатором кея. Добавлено @ 12:17 не понятно, зачем объявлена k:variant? да мы то знаем, что она возвращает в общем случае. интересует твой конкретный случай, ибо у тебя в коде нет проверки результата этой функции |