Название: Перетаскивание по сцене с зажатым Alt Отправлено: Олег от Ноябрь 20, 2011, 16:48 Возник вопрос.
Ситуация: Имеется сцена, на ней графические элементы. При перетаскивании элемента вызывается переопределенный метод mouseMoveEvent. Необходимо определить, перетаскивает ли пользователь элемент просто с помощью мыши, или в добавок с зажатым Alt. Это нужно для реализации копирования элемента (если Alt зажат). Можно ли определить, нажата ли конкретная кнопка на клавиатуре непосредственно в методе mouseMoveEvent? Или это достигается другим путем? Название: Re: Перетаскивание по сцене с зажатым Alt Отправлено: BRE от Ноябрь 20, 2011, 16:51 Qt::KeyboardModifiers modifiers () const
Название: Re: Перетаскивание по сцене с зажатым Alt Отправлено: Олег от Ноябрь 20, 2011, 17:02 Qt::KeyboardModifiers modifiers () const Большое спасибо, работает! Название: Re: Перетаскивание по сцене с зажатым Alt Отправлено: Олег от Ноябрь 20, 2011, 17:23 А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать?
Название: Re: Перетаскивание по сцене с зажатым Alt Отправлено: Igors от Ноябрь 20, 2011, 17:38 А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать? Частенько лучше задать себе вопрос "а как люди делают"? Напр представим себе предложенная Вами схема была бы (упаси бог) реализована для копирования файлов drag'n drop - сколько же раз "копируется копия"? :)Название: Re: Перетаскивание по сцене с зажатым Alt Отправлено: Олег от Ноябрь 20, 2011, 17:41 А можно ли программно отключить нажатый alt? Т.е. пользователь начинает перетаскивать элемент с нажатой кнопкой, он копируется, начинается перетаскивание копии, но т.к. alt все еще нажат, то копируется копия, начинается перетаскивание копии копии итд... Если после первого копирования alt отключить, то все будет ок) но как это сделать? Частенько лучше задать себе вопрос "а как люди делают"? Напр представим себе предложенная Вами схема была бы (упаси бог) реализована для копирования файлов drag'n drop - сколько же раз "копируется копия"? :)Ну вопрос и заключается в том, как сделать правильно? |