問題タブ [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.
c++ - 複数の QAction を同じ QMenu に追加するにはどうすればよいですか?
Qt メニューのカスタマイズを実装しようとしていQAction
ます。同じ RMB コンテキスト メニューに同じものを複数回追加する機能を提供しています。しかし、私がしようとすると:
2 回追加すると、 のQAction
インスタンスが 1 つだけQAction
メニューに表示されます。の複数のインスタンスを持つことができないのはなぜQAction
ですか? これを達成するためのトリックはありますか?以前のアクションのすべてのプロパティを使用して新しいアクションを複製/作成しようとしていました。しかし、 a とQActions
プロパティを取得/抽出する方法がわかりません。SENDER
MEMBER
qt - QMenu exec (QAction の代わりに) QMenu クリックで戻る
QAction
メニューを作成していますが、アイテムとアイテムの両方をクリックできるようにしたいと考えていますQMenu
。
の実行exec
中に をクリックしても何も起こりませんQMenu
。にアクションを追加したとしてもQMenu
。
これを行う方法はありますか?
これが私が試したものです:
qt - 無効になっている QToolButton の QMenu アクセスを有効にします
私はいくつかの を含むQToolButton
付属品を持っています。これらのアクションの 1 つがボタンのデフォルト アクションです。アクションをクリックすると、デフォルトのアクションが動的に変化し、これはうまく機能します。QMenu
QActions
現在、これらQActions
はシグナルによって有効化および無効化されます。(現在の)デフォルト アクションQToolButton
が無効になると、 も無効になります。
これにより、選択できるようにしたい有効なエントリ ( )QMenu
がまだ含まれているアクセス不能になります。QMenu
QActions
だから:デフォルトのアクションが取得されているときに、どうにかしてメニューを利用できるようにすることはできますsetEnabled(false)
か?または、他のアイデアはありますか?
qt4 - プログラムで QContextMenuEvent を呼び出して QMenu を表示する
ユーザーの操作なしで QWidget に折りたたまれていない QMenu をポップアップしたい。現時点では、右クリックすると空の QWidget に QMenu が表示されます。contextMenuEvent(QContextMenuEvent *event) シグナルをプログラムで呼び出す方法はありますか?
別の方法として、メニューバーにメニューを追加することもできます。しかし、これは崩壊している。メニューを折りたたんで表示することはできますか?
どんなアイデアでもうれしいです。ありがとう!
編集:コードスニペット
メニューのない空のウィジェットしか表示されません。別のクラスからウィジェットの show() を呼び出します。問題は、QMenu が実際にはウィジェットに追加されていないことです。しかし、メニューバーを使用せずに追加する方法は今はわかりません:-(。
c++ - 複数の Qmenu 内で QMenu を再利用する
こんにちは、みんな、
一部のデータに応じて、動的に入力された QMenu を生成するコードがいくつかあります (これを thisMenu と呼びます)。QMenu thisMenu が作成され、いくつかの「メイン」QWidget を親として取り、この QWidget 内の QMenuBar に追加されます (menuBar.addMenu(&thisMenu)。後で、ユーザーがコンテキスト メニューから thisMenu にアクセスできるようにします (ユーザーが QWidget の一部を右クリックすると、QMenu (contextMenu と呼ばれる) がポップされ、前の QMenu がサブメニューとして表示されます)。
contextMenu.addMenu(&thisMenu) で最初に作成した QMenu を再利用すると、contextMenu が適切なグローバル位置にポップしたとしても、thisMenu は常に他の位置に変換され、場合によっては contextMenu の上や下に表示されることがわかります。
これがペアレンティング チェーンにリンクされていることをテストできます: thisMenu は contextMenu の子ではありません。contextMenu の子として作成すると、すべて問題ありません。thisMenu に似た QMenu を再作成したり、thisMenu の親を変更したりせずに、このケースをきれいに処理する方法はありますか? つまり、QMenuBar と一部のコンテキスト メニュー/QMenu の両方で thisMenu を再利用しますか? QMenuの親子チェーンを処理してQMenuを共有する適切な方法は何ですか?
ありがとうございました、
c++ - Qt: Mac OS X でアプリケーション QMenuBar の内容を変更する
私のアプリケーションは、複数の「ページ」に QTabWidget を使用します。トップレベルのメニューは、ユーザーがどのページにいるかに応じて変化します。
私の問題は、メニュー バーの内容を再作成しようとすると、表示に重大な問題が発生することです。Mac OS X を除くすべてのプラットフォームで、1 番目と 3 番目のスタイル (2 番目はテストしていませんが、そのスタイルは使用したくない) で期待どおりに動作します。
最初のメニューは、私がアプリケーションで作成するほとんどの方法で作成され、正しいタイトルを受け取りますが、メニューが再作成されるとすぐに消えます。
2 番目のメニューは、メニュー バーの最初の作成と再作成の両方に表示されますが、どちらの場合も「無題」というラベルが付いています。2 番目のメニューのスタイルは、これを解決しようとしたときにのみ作成されたため、メニューを固定できる唯一の方法です。
3 番目の動的メニューは表示されません。表示しようとしているメニューを動的に設定するために、このスタイルを使用します。
QMenuBar を削除して再作成しようとしました
とは対照的にm_menuBar->clear()
それを使用しますが、同じ動作をします。
画像をインラインで投稿するほどの評判はないので、imgur のリンクを含めます。
起動動作: http://i.imgur.com/ZEvvGKl.png
投稿ボタンクリック動作: http://i.imgur.com/NzRmcYg.png
Qt 5.3 を搭載した Mac OS X 10.9.4 でこの動作を再現する最小限の例を作成しました。
メインウィンドウ.cpp
メインウィンドウ.h
python - qMenu 選択からテキストを取得する
qMenu にリストされた選択を取得しようとしていますが、qMenu からのユーザーの選択に基づいて、選択を qLineEditcamSelBtn
に表示します -currentCamTxt
ただし、メニューを機能させることはできますが、選択が機能しません。