1
マウスの左ボタンではなく右マウスボタンで動かすことができるQGraphicsItemを作成することはできますか?QGraphicsItemを左マウスの代わりに右マウスボタンで動かす
検索で見つかった唯一のものはスレッドwhich suggests using QGraphicsItem::setAcceptedMouseButtons()で、右クリックだけを受け入れるように設定しようとしましたが、項目が動かなくなりました。
これは私が試したコードです:
QGraphicsScene *scene = new QGraphicsScene(this);
ui->graphicsView->setScene(scene);
QGraphicsRectItem *item = scene->addRect(0, 0, 100, 100);
item->setFlag(QGraphicsItem::ItemIsMovable);
item->setAcceptedMouseButtons(Qt::RightButton);
残念ながら、 'setAcceptedMouseButtons'に渡されるパラメータにかかわらず、' QGraphicsItem :: mouseMoveEvent'のコードは左ボタンでのみ動くように配線されているようです。右側のボタンを移動したい場合は、 'mouseMoveEvent'をオーバーライドして足を自分で動作させる必要があります。 –
ありがとう、それは私がよく疑ったものですが、私は確信が持てませんでした。私は、イベントをフィルタリングして、マウスのボタンを置き換えて、実際の左クリックをフィルタリングしながら、左クリックであるオブジェクトをだますことができます。 – sashoalm