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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Перетаскивание по сцене с зажатым Alt  (Прочитано 3315 раз)
Олег
Гость
« : Ноябрь 20, 2011, 16:48 »

Возник вопрос.
Ситуация: Имеется сцена, на ней графические элементы. При перетаскивании элемента вызывается переопределенный метод mouseMoveEvent. Необходимо определить, перетаскивает ли пользователь элемент просто с помощью мыши, или в добавок с зажатым Alt. Это нужно для реализации копирования элемента (если Alt зажат).
Можно ли определить, нажата ли конкретная кнопка на клавиатуре непосредственно в методе mouseMoveEvent? Или это достигается другим путем?
Записан
BRE
Гость
« Ответ #1 : Ноябрь 20, 2011, 16:51 »

Qt::KeyboardModifiers   modifiers () const
Записан
Олег
Гость
« Ответ #2 : Ноябрь 20, 2011, 17:02 »

Qt::KeyboardModifiers   modifiers () const


Большое спасибо, работает!
Записан
Олег
Гость
« Ответ #3 : Ноябрь 20, 2011, 17:23 »

А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Ноябрь 20, 2011, 17:38 »

А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать?
Частенько лучше задать себе вопрос "а как люди делают"? Напр представим себе предложенная Вами схема была бы (упаси бог) реализована для копирования файлов drag'n drop  - сколько же раз "копируется копия"?  Улыбающийся
Записан
Олег
Гость
« Ответ #5 : Ноябрь 20, 2011, 17:41 »

А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать?
Частенько лучше задать себе вопрос "а как люди делают"? Напр представим себе предложенная Вами схема была бы (упаси бог) реализована для копирования файлов drag'n drop  - сколько же раз "копируется копия"?  Улыбающийся

Ну вопрос и заключается в том, как сделать правильно?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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