Russian Qt Forum
Апрель 24, 2024, 03:23 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Свои клавиши модификаторы  (Прочитано 2545 раз)
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« : Апрель 14, 2014, 10:07 »

Название темы скорее всего очень странно, но лучше не придумал Улыбающийся  К вопросу зайду из далека, в Qt есть клавиши модификаторы (Shift, Ctrl, Alt) мы можем отследить их состояние через

Код:
QGuiApplication::keyboardModifiers()

или

Код:
QApplication::keyboardModifiers()

я хочу добавить свою клавишу к этому списку (или сделать похожий функционал). Нужно отслеживать зажата ли клавиша "Пробел" в данный момент времени или нет. Понимаю, что есть ф-ции keyPressEvent и keyReleaseEvent которые я могу переопределить, но если я зажму и буду держать пробел, то эти функции будут вызываться постоянно как если бы я судорожно кликал по клавишам. Поэтому таким способом отловить состояние нормально не получается. Какие еще могут быть варианты ?
Записан
Bepec
Гость
« Ответ #1 : Апрель 14, 2014, 10:16 »

Будут вызываться постоянно, но это не помешает. У QKeyEvent есть метод "isAutoRepeat () ", который как раз и позволяет пропускать фигню типа зажали и держат.
Таким образом, всё у вас получится.

PS сам такое делал.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.06 секунд. Запросов: 22.