Название: Сохранение мыши в зажатом состоянии на виджете Отправлено: ernie от Октябрь 28, 2010, 13:12 Доброго времени суток,господа.
Возникла такая ситуация,есть виджет,при зажатии мыши на котором(pressEvent+timer),происходит смена родителя этого виджета,он помещается на лайаут временного окна для перетаскивания. Теперь собственно вопрос,если я открепляю виджет(при откреплении виджета releaseEvent соответственно не срабатывает),отжимаю кнопку,а потом начинаю перемещать виджет с зажатой кнопкой(обрабатываю mouseMoveEvent),то всё ок,но мне надо чтобы виджет откреплялся,и без отжатия кнопки тут же я мог делать перемещение.Проблема в том,что без отжатия кнопки мыши,moveEvent не обрабатывается.Как это можно реализовать?Заранее спасибо. Название: Re: Сохранение мыши в зажатом состоянии на виджете Отправлено: GreatSnake от Октябрь 28, 2010, 13:17 см. bool QCoreApplication::sendEvent ( QObject * receiver, QEvent * event ) [static]
где receiver = открепленный виджет event = new QMouseEvent( QEvent::MouseButtonRelease, ... ) Название: Re: Сохранение мыши в зажатом состоянии на виджете Отправлено: ernie от Октябрь 28, 2010, 13:22 GreatSnake,пробовал,но пока не совсем понимаю какой событие посылать,releaseEvent посылать не нужно,нужно чтобы на откреплённом виджете обрабатывалось moveEvent сразу,как при нажатой кнопке
Название: Re: Сохранение мыши в зажатом состоянии на виджете Отправлено: GreatSnake от Октябрь 28, 2010, 14:01 Попробуйте использовать QWidget::grabMouse()/QWidget::ungrabMouse()
Название: Re: Сохранение мыши в зажатом состоянии на виджете Отправлено: ernie от Октябрь 28, 2010, 14:35 GreatSnake,спасибо огромное!то что нужно.Только там не ungrab,а releaseMouse(),но это так,для читающих:)
|