Мне нужно остановить QDrag, когда происходит dragEnterEvent. Я хочу выпустить QDrag без отпускания кнопки мыши.
Я попытался отправить события в QDrag безуспешно.
QMouseEvent* evt = new QMouseEvent(QEvent::MouseButtonRelease,event->pos() ,Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
QCoreApplication::sendEvent(drag,evt);
Как этого добиться?
Обновить:
Я хотел бы отпустить мышь, когда происходит QDragEvent.
QMouseEvent* finishMoveEvent = new QMouseEvent (QEvent::MouseButtonRelease, event->pos (), Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
QTabBar::mouseReleaseEvent(finishMoveEvent);
qApp->sendEvent(parentWidget(),finishMoveEvent);
qApp->sendEvent(drag,finishMoveEvent);
qApp->postEvent(drag,finishMoveEvent,Qt::HighEventPriority);
Я перепробовал каждую строчку во всех возможных комбинациях. Пожалуйста помоги.
Как освободить QDrag во время QDragEnterEvent.
Само перетаскивание не получает события мыши, виджеты -. Перетаскивание фильтрует / перехватывает эти события. Вам нужно отправить соответствующее событие в целевой виджет и надеяться, что пользовательский опыт не пострадает.