Это произошло для каждых QDialog I pop, которые срабатывают либо из mouseReleaseEvent в QGraphicsItem, либо из QContextMenu. Я не понимаю, в чем проблема - код довольно прост ..Закрытие QDialog, запущенного с mouseReleaseEvent RightClick приводит к появлению пустого контекстного меню
...
void MyQGfxItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
{
if(event->button() == Qt::RightButton)
{
MyDialog someDlg;
if(someDlg.exec())
{
}
}
}
...
Как только диалог закрыт, либо через OK или Отмена, пустое контекстное меню, где событие было вызвано:
пустой элемент, кажется, контролировать, если мой QDockWidget скрыт или видно .. Любая идея, что происходит? Многочисленные поисковые запросы Google оставили меня застрявшим.
Edit - это выглядит, как это происходит только при использовании правой кнопки мыши ..
Вы пробовали принять мероприятие? Например, в вашем mouseReleaseEvent вы вызываете event-> accept(). – Anthony
Почему вы не используете настраиваемое контекстное меню, а не используете сырые события мыши? – alexisdm
Проблема в том, что я даже не хочу, чтобы появилось контекстное меню. Правые клики по какой-то причине показывают «пустое» контекстное меню, которое управляет QDockWidget – giraffee