Pyqt-qmenubar-qmenu-qaction-widgets
QMenuBar、QMenuおよびQActionウィジェット
QMainWindowオブジェクトのタイトルバーのすぐ下にある水平の QMenuBar は、QMenuオブジェクトを表示するために予約されています。
ポップアップメニューを作成するために、PyQt APIはcreatePopupMenu()関数を提供します。 menuBar()関数は、メインウィンドウのQMenuBarオブジェクトを返します。 addMenu()関数を使用すると、メニューをバーに追加できます。 次に、アクションはaddAction()メソッドによってメニューに追加されます。
次の表に、メニューシステムの設計に使用される重要な方法の一部を示します。
以下は、QMenuで最も一般的に使用されるメソッドです。
Sr.No. | Methods & Description |
---|---|
1 |
menuBar() メインウィンドウのQMenuBarオブジェクトを返します |
2 |
addMenu() 新しいQMenuオブジェクトをメニューバーに追加します |
3 |
addAction() テキストまたはアイコンで構成されるQMenuウィジェットにアクションボタンを追加します |
4 |
setEnabled() アクションボタンの状態を有効/無効に設定します |
5 |
addSeperator() メニューに区切り線を追加します |
6 |
Clear() メニュー/メニューバーの内容を削除します |
7 |
setShortcut() キーボードショートカットをアクションボタンに関連付けます |
8 |
setText() アクションボタンにテキストを割り当てます |
9 |
setTitle() QMenuウィジェットのタイトルを設定します |
10 |
text() QActionオブジェクトに関連付けられたテキストを取得します |
11 |
title() QMenuオブジェクトに関連付けられたテキストを取得します |
QMenuオブジェクトは、QActionボタンがクリックされるたびにtrigger()シグナルを発します。 クリックされたQActionオブジェクトへの参照は、接続されたスロット関数に渡されます。
例
この例では、最初に最上位ウィンドウのQMenuBarオブジェクト(QMainWindowオブジェクトでなければなりません)へのすべての参照が保存されます。
ファイルメニューは、addMenu()メソッドによってメニューバーに追加されます。
メニューのアクションボタンは、文字列またはQActionオブジェクトです。
サブメニューがトップレベルメニューに追加されます。
ファイルメニューから発せられるtriggered()シグナルはprocesstrigger()メソッドに接続され、シグナルを発生させるQActionオブジェクトを受け取ります。
完全なコードは次のとおりです-
上記のコードは、次の出力を生成します-