Qt にメイン ウィジェットがあり、このウィジェットにはQGraphicsView
andが含まれていQGraphicsScene
ます。QGraphicsPixmapItem
シーンでs とsを追加しQGraphicsTextItem
ます。私が扱うメインウィジェットではQWidget::mouseDoubleClickEvent ( QMouseEvent * event )
、私のアイテムはすべてフラグが設定されています:
mItem->setFlag ( QGraphicsItem::ItemIsMovable );
mItem->setFlag ( QGraphicsItem::ItemIsSelectable );
mItem->setFlag ( QGraphicsItem::ItemIsFocusable);
シーン内のアイテムを移動して選択したいので、ダブルクリックが発生したときにメインウィジェットがそれを処理したいからです。ダブルクリックするとメインウィジェットにQGraphicsTextItem
入りますが、アイテムをダブルクリックすると、ダブルクリックを吸収してメインウィジェットに送信しません。また、フラグが設定されていない場合は、ダブルクリック イベントも吸収します。なぜそれが発生するのですか?s のサブクラスを実装したくなく、既に定義されているメソッドを使用したかったのです。これが私がしていることの写真です:mouseDoubleClickEvent
QGraphicsPixmap
ItemIsFocusable
QGraphicsTextItem
QGraphicsItem