問題タブ [qmenubar]
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.
python - QMenuBar のメニューの QRect を取得する
QMenuBar に mouseMoveEvent を再実装して、フレームレス アプリケーションをクリック アンド ドラッグできるようにしています (基本的には、アプリの周りに独自のフレームを作成するだけです)。ただし、マウスがQMenuアイテムの上にあるときはいつでもこの動作を無効にしようとしています。これにより、奇妙な動作が発生します(メニューをクリックすると、ウィンドウがマウスに追従し始めます!)。
これは QMenuBar を呼び出すのと同じくらい簡単だと思いましたが、self.childrenRect().contains(event.pos())
これは機能しません。私が言えることから、self.childrenRect()
実際には QMenu 項目の rect は返されません。では、これを行う「正しい」方法は何ですか?
参考までに、サブクラス化された QMenuBar を次に示します。