我有一個Qt的主窗口小部件,這個窗口部件包含一個QGraphicsView
和它的內部QGraphicsScene
。在場景中,我添加了QGraphicsPixmapItem
s和QGraphicsTextItem
s。在主窗口部件我處理QWidget::mouseDoubleClickEvent (QMouseEvent * event)
,我的項目都設置標誌用:QGraphicPixmapItem雙擊事件不會去父窗口小部件,而QGraphicsTextItem發送
mItem->setFlag (QGraphicsItem::ItemIsMovable);
mItem->setFlag (QGraphicsItem::ItemIsSelectable);
mItem->setFlag (QGraphicsItem::ItemIsFocusable);
因爲我想移動項目中的場景,並選擇他們,當雙擊出現主窗口部件也想處理該。當我雙擊到QGraphicsTextItem
它進入mouseDoubleClickEvent
在主窗口小部件中,但是當我雙擊到QGraphicsPixmap
項目時,它吸收雙擊並且不發送它到主窗口小部件。當ItemIsFocusable
標誌沒有設置時,QGraphicsTextItem
也會吸收雙擊事件。爲什麼會發生?
我不想實現QGraphicsItem
的子類,並想使用已定義的方法。下面是我做的一個畫面:
你認爲你的代碼在做什麼的文本描述可能與它實際做的有很大不同。我建議發佈一個代碼示例以改善問題。 – TheDarkKnight
你希望'QGraphicsPixmapItem'在雙擊上做什麼?項目做他們的默認實現:除非你繼承他們並且做你自己的實現。 – Thalia