問題タブ [qmenu]

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 投票する
1 に答える
1304 参照

qt - qml QDeclarativeViewにコンテキストメニューを追加するには?

私のqmlウィジェットにはContextMenuが必要です。QMenuを含むQGraphicsProxyWidgetを作成しますが、問題があります。メインウィンドウの外にコンテキストメニューが表示されません。メインウィンドウをメニューの親として設定するには? カスタム コンポーネントは悪い考えです。実行、アクション、ポップアップなど、QMenu の可能性が必要です。

メイン.qml

main.cpp

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

qt - コンテキスト メニューで QAction のチェック/チェック解除を追加するにはどうすればよいですか?

Qt でコンテキスト メニューを作成しましたが、メニュー内の項目がチェックされている/チェックされていない方法で機能する必要があるため、それぞれの項目をクリックするたびに切り替わります。以下に示すように、この機能を QAction に追加するにはどうすればよいですか?ここに画像の説明を入力

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

c++ - QSignalMapper またはその他の方法で QMenu から QString を Qt スロットに渡す方法

多くのサブメニューを持つ QMenu があります。これらは動的に作成されます。つまり、名前メニューはデータベースから取得され、ループで作成されます。メニューがクリックされたときに同じスロットのtriggered()などを起動したかったのですが、メニュー固有のアクションを実行できるようにQStringメニュー名をスロットに渡す必要がありました。QAction * をトリガーされたイベントに渡し、setData を使用してみましたが、実行時エラーが発生しています

object::connect: そのようなシグナルはありません QAction::triggered(QAction *)

または、signalMapper がコンストラクターで初期化されたデータ メンバーである QSignalMapper も試しました。

2 番目のケースでは、エラーは発生しませんが、スロット関数 playChannel は呼び出されていません。誰かがそれを解決するのを助けることができれば本当に感謝しています.

更新 1:私が見た他の例との唯一の違いは、通常、人々は複数のウィジェットから単一のスロット(異なるボタンなど) に信号を接続していることです。私の場合、複数のサブメニュー (異なる名前) を単一のスロットに接続しています。これは違いを生むべきですか?

更新 2:以下の QSignalMapperのソリューションで提案されている修正後に機能しました。また、 SubMenu を setMapping の引数として使用していたという事実もあり、代わりに MenuAction アイテムを使用する必要がありました。しかし今、私はイベントを複数回発生させています。つまり、選択したサブメニューカテゴリのメインメニューにエントリがある回数だけです。チャネル タイプが英語 (メイン メニュー) で 4 つのエントリ)、HBO、スター映画など (サブ メニュー) で、HBO を選択した場合、イベントは文字列 HBO で 4 回発生します。サブメニューごとに個別のシグナルマッパーを作成すると、うまく機能します。しかし、私は単一のマッパーを使用することを望んでいましたが、ここで間違ったことをしています。回答へのコメントの詳細。

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

contextmenu - PySide のボタンの左クリックにコンテキスト QMenu を追加する

押したマウスボタンの左クリックにコンテキストメニューを追加したいemailbtn

私は方法で試しましcontextMenuEventたが、それは右クリックで私を与えます:/何が欠けていますか? どんな助けでも大歓迎です。

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

pyqt4 - pyqt QWidget にサブメニューを追加する

私はその非常に基本的な質問を知っていますが、少し混乱しています。おそらく何かを忘れています.

QMenuBar() の「ツール」にサブメニュー「プレビュー」を追加しようとしています

これまでのところ、これは私がやろうとしていることです

しかし、これはサブメニューを追加する正しい方法ではないと思います

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

c++ - QMenuの操作と引数の受け渡し

QMenuいくつかのメニュー項目が動的に作成されているがあります。

この目的のために、名前とアクション(メニュー項目がヒットした場合に実行する必要がある)を含むメニュー項目のコレクションを繰り返し処理し、それらをコンテキストメニューに追加し続けます。すべてのメニュー項目は、共通のスロットに接続する必要があります。

しかし、どういうわけかトリガーアクションは発生しません。つまり、connectステートメントに到達しましたが、制御が指定されたSLOTに渡されず、アクションは実行されません。

誰かが私がこれでどこが間違っているのか教えてもらえますか?

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

triggers - QMenuBarのクリックをキャッチする方法

QMainWindow にある QMenuBar のクリックをキャッチしたいので、QMenuBar をサブクラス化し、mousePressEvent 関数をオーバーライドしましたが、メニューをクリックしてもサブメニューに表示されません。

アイデア ?

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

c++ - システム トレイのメニューにすべての QActions がない

私は osx マウンテン ライオン (10.8.3) を実行しています。以下のリンクのコードを実行すると、アクションが 1 つしかないメニューが表示されます...

https://gist.github.com/Supm4n/8c705154b8586618f4cc

もう 1 つの奇妙な点は、goOnline 以外の 1 つのアクションだけでコンパイルすると、システム トレイ アイコンをクリックしてもメニューが表示されないことです。

Qt のバージョンは 5.0.1 です

よろしくお願いします。