![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Пишу простейшую прогу - Калькулятор - но вылезла одна "веселая" заморочка: на компах, где будет он использоваться стоит PuntoSwitcher (автопереключатель раскладки клавы) и на кн. Break у него как раз забиндено переключение по дефолту, а я в свою очередь хочу использовать эту клавишу для сброса - удобнее так, да и нет других подходящих для этого клавиш рядом с цифровой клавиатурой... В результате получается дикое порно - при нажатии на Break результат на табло увеличивается по длине вдвое (множится), причем через раз... смысла описывать точно, что происходит нету, просто это глюк в прикладушке моей... и с ним надо бороться! Обчитался drkb на тему Hooks, но понял если честно слабо... попробовал локальный хук на клаву вешать - результат превзошел ожидание - пришлось тачку ребутить Reset'ом... Прошу помощи как мыслями на тему, так и по возможности кодом!
Оговорюсь сразу - изменение HotKey'ев в PS недопустимо - бухгалтерши тады повесятся! Настройка исключений в PS на мою прикладушку тоже не решает проблемы... Это сообщение отредактировал(а) wesadex - 11.11.2005, 12:26 |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 13 Всего: 146 |
Мож воспользоватся GetKeyboardState, и вручную обрабатывать требуемую клавишу?
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 9 Всего: 98 |
во-первых: почему бы не навесить сброс на Delete ( это IMHO логичнее )
во-вторых: почему бы не найти причину глюка? -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Romikgy, получилось, спасибо... вот решение:
2 _hunter: На Delete неудобнее, чем на Break (см. клаву). Причину глюка же искать не надо - она уже известна - так работает PuntoSwitcher. То есть на Брейке висит отмена сделанных им изменений и когда ты вводил допустим только цифири (на калькуляторе так и есть), он частенько возвращает то, что у него в буфере еще раз, хотя изменений не было! Всем спасибо за ответы! Так, замечательно, Брейк я поймал, теперь осталось не дать PS его получить... Это сообщение отредактировал(а) wesadex - 11.11.2005, 14:23 |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 13 Всего: 146 |
Дык обнуляй после своей ф-ции буфер клавы, по памяти вроде так
Key:=#0; -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |