Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
17 / 19 / 4
Регистрация: 03.02.2010
Сообщений: 262

Обработка сообщения WM_KEYUP с комбинацией клавиш CTRL+A

04.10.2015, 07:58. Показов 2044. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Столкнулся с проблемой обработки сообщения WM_KEYUP при использовании сочетания клавиш CTRL+A.
В Mfc диалоге я создал таблицу акселлераторов, добавил в нее сочетание клавиш CTRL+A и добавил обработчик событий ON_COMMAND в класс диалога. Когда я нажимаю сочетание клавишь CTRL+А то обработчик ON_COMMAND нормально выполняется, но как обработать событие при отпускании комбинации клавишь CTRL+A? Подскажите пожалуйста.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.10.2015, 07:58
Ответы с готовыми решениями:

Как заставить Edit control принимать сообщения ctrl+c, и тп?
Собственно сабж в теме

Не открывается терминал комбинацией клавиш ctrl+alt+t
Хеллоу! Поставил Kali. Скачал самый свежий дистрибутив. Не открывается терминал комбинацией клавиш ctlr+alt+t. Такая же фигня была и...

Вывод временного сообщения при нажатии клавиш Ctrl+Alt +А
При нажатии клавиш Ctrl+Alt +А на экране должно появиться сообщение «Ошибка» », которое должно сохраняться в течение 10 сек. Malina95,...

3
208 / 45 / 13
Регистрация: 06.09.2010
Сообщений: 99
05.10.2015, 13:03
SHORT GetKeyState(VirtKey);
1
17 / 19 / 4
Регистрация: 03.02.2010
Сообщений: 262
05.10.2015, 21:34  [ТС]
Спасибо за ответ, а не могли бы вы подсказать как использовать данную функцию в PreTranslateMessage?

Пробовал вот так, но сообщение WM_KEYUP всеравно не хочет обрабатываться для аксселератора CTRL+A:

C++
1
2
3
4
5
6
7
8
 if(pMsg->message==WM_KEYUP)// 
    {
      if (GetKeyState(ID_Accelerator_CTRL+A)<0)
      {
             MessageBox("test!");
             return TRUE;
       }
    }
0
208 / 45 / 13
Регистрация: 06.09.2010
Сообщений: 99
06.10.2015, 10:00
C
1
2
3
4
    if ((pMsg->message==WM_KEYUP)&&(pMsg->wParam=='A'))
    {
        if ((GetKeyState(VK_RCONTROL)|GetKeyState(VK_LCONTROL))&0x80) MessageBox("Test");
    }
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.10.2015, 10:00
Помогаю со студенческими работами здесь

Выделить всю StringGrid комбинацией Ctrl-A
Хочу, чтобы при стандартной комбинации Ctrl-A была выделена вся таблица TStringGrid. Пытаюсь сделать так: void __fastcall...

Вставка текста комбинацией кнопок Ctrl+v
Доброго времени суток :) у меня есть небольшая консольная программа в которой генерируется HTML код есть пункт, нужно ли видео 1 да 2...

Вставка даты комбинацией Ctrl Ж не всегда работает
Excel 2016, Windows 8.1. Я знаю, что текущая дата вставляется с помощью клавиш Ctrl+Ж. И текущее время - клавишами Ctrl+Shift+Ж. Но...

Разработать программу, которая не реагирует на нажатия клавиш Ctrl+Break и Ctrl+C
И мне помогите пожалуйста)) На входном языке Assembler разработать программу, которая не реагирует на нажатия клавиш Ctrl+Break и Ctrl+C....

Как перевести сочетание клавиш ctrl+v на, например ctrl+z?
Собственно проблема заключается вот в чем: у меня на ноутбуке отказали клавиши (пробел:gcray2: ,я, м, и, э, del, стрелка вниз, 6 на правой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru