問題タブ [qmouseevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1355 参照

qt - マウス イベントの決定: ホバーは子ウィジェットの親のままにします

親ウィジェットと子ウィジェットの 2 つのウィジェットがあります。

ここに画像の説明を入力

ウィジェットの実装にアクセスした場合、イベント ハンドラーを実装したり、ウィジェットを派生させたりせずredに、カーソルがウィジェットからウィジェットにホバーする瞬間を判断することは可能redですか?blueblue

赤い領域の厚さは明確に定義されています (例: 5px)。

0 投票する
0 に答える
50 参照

qt - 削除後のQGraphicsItemGroupは、新しいものを追加できません

QGraphicsView に scene_ を添付しています

シーンで私は2つのことを追加しています

シーンに QGraphicsItem を追加できます..

しかし、このコマンドを使用して一度削除すると..その後、再描画できません

誰か助けてください/

次に、助けが必要です.. QGraphicsItem でマウスイベントが必要です.. mouse Selected Qgraphicsitem を識別できるので、その上で何らかのアクションを実行できます

あなたの助けは非常に高く評価されます

0 投票する
1 に答える
474 参照

qt - QMouseEvent の保護されたメンバーにアクセスして、マウス位置の浮動小数点値を取得するにはどうすればよいですか? 【Qt開発者】

QMouseEventマウス位置の整数値を格納します。ただし、マウス位置の float 値を格納するプロテクト メンバ「s」があります。フロート値を取得するにはどうすればよいですか?

を継承しようとしましたQMouseEventが、残念ながら、このエラー メッセージが常に表示されます。

エラー: C2511: 'QMouseEventF::QMouseEventF(QWidget *)': オーバーロードされたメンバー関数が 'QMouseEventF' に見つかりません

これは私のヘッダーファイルです:

そして、継承されたクラスは次のとおりです。

0 投票する
1 に答える
216 参照

c++ - QWidget 移動時の QPainter 黒いトレース

2 つのウィジェットを含む小さなテスト アプリケーションを作成しました。内側のウィジェットのマウスの移動、プレス、リリース イベントを再実装して、ドラッグ アンド ドロップで大きな親の内側にウィジェットを移動できるようにしました。

しかし、動かすと上と左から黒い跡が現れます。これはどのように見えるかです:

ここに画像の説明を入力

これが私のコードです:

main.cpp :

widget.h :

ウィジェット.cpp :

innerwidget.h :

innerwidget.cpp :

編集: 呼び出すとトレースが消えますWidget::repaintが、イベントフィルターをインストールして、InnerWidget移動するたびに再描画する必要があります。イベントフィルターを使用せずに、よりクリーンなソリューションが必要です...

実際に何が起こっているのか誰か教えてもらえますか?

0 投票する
2 に答える
1193 参照

c++ - MousePressEvent 内で QDialog を使用する

QDialogをオーバーライドせずにサブクラス化するクラスexec()accept()またはその内部でクラスreject()を呼び出す別のクラスがあります。DialogmousePaintEvent

チェックのためにDialogの存在を使用しようとしましたが、delete実際には機能しませんでした(dialog.reject()の後に入れました)最後のifですが、.reject()の後は何も機能しないと思い始めました。どうすればいいですか?