1

次のように定義された3つのイベントがあります。

void mouseMoveEvent(QMouseEvent *eventMove);
void mousePressEvent(QMouseEvent *eventPress);
void mouseReleaseEvent(QMouseEvent *releaseEvent);

さて、マウスをクリックしてマウスを離すまで動かしたときに何かをしたいとしましょう。!例)上記の条件が成立するまで出力する。

編集:グローバル変数を設定しようとしましたが、bool aそれtrueを in mousePressEvent(...)falseinに設定しようとしましたが、ボタンが離されたときでも mouseReleaseEvent(...)常にです。mouseMoveEvent(...)atrue

4

1 に答える 1

1

これは、次のコードとまったく同じです。

Qtでのマウス座標の追跡

しかし、なしsetMouseTracking(true)setMouseTracking(false)(デフォルト) では、void mouseMoveEvent(QMouseEvent *event)マウスボタンが押されたときにのみメソッドが呼び出されます。

いいえmousePressEvent(QMouseEvent *eventPress)、またはmouseReleaseEvent(QMouseEvent *releaseEvent)要件に必要です。

于 2013-09-01T17:30:51.120 に答える