このページでは

MenuItem QML Type

ネイティブメニュー項目。詳細...

Import Statement: import Qt.labs.platform
Inherits:

QtObject

Inherited By:

MenuSeparator

プロパティ

信号

方法

詳細な説明

MenuItem 型は、ネイティブプラットフォームのメニュー項目に対する QML API を提供します。

「拡大」と「縮小」の項目を含むネイティブメニュー

メニュー項目は、icon 、text 、およびshortcut で構成されます。

Menu {
    id: zoomMenu

    MenuItem {
        text: qsTr("Zoom In")
        shortcut: StandardKey.ZoomIn
        onTriggered: zoomIn()
    }

    MenuItem {
        text: qsTr("Zoom Out")
        shortcut: StandardKey.ZoomOut
        onTriggered: zoomOut()
    }
}

注: Qt.labs モジュール内の型は、将来のバージョンでも互換性が維持されるとは限りません。

Menu およびMenuItemGroupも参照してください 。

プロパティのドキュメント

checkable : bool

このプロパティは、その項目がチェック可能かどうかを表します。

チェック可能なメニュー項目には、オン/オフの状態があります。たとえば、ワープロでは、「太字」というメニュー項目はオンまたはオフのいずれかになります。チェック不可能なメニュー項目は、単に実行されるだけのコマンド項目です。たとえば、「ファイルの保存」などです。

デフォルト値は `false` です。

「 checked 」および「MenuItemGroup 」も参照してください 。

checked : bool

このプロパティは、項目がチェックされている(オン)か、チェックされていない(オフ)かに関係なく有効です。デフォルト値は `false` です。

「 checkable 」および「MenuItemGroup 」も参照してください 。

enabled : bool

このプロパティは、その項目が有効かどうかを表します。デフォルト値は `true` です。

無効化された項目は、ユーザーによってトリガーすることはできません。メニューから消えることはありませんが、利用できないことを示すような方法で表示されます。たとえば、グレーの濃淡のみを使用して表示される場合があります。

項目が無効化されている場合、そのshortcut を通じてその項目を起動することはできません。

font : font

このプロパティは、メニュー項目のフォントを指定します。

「text」も参照してください 。

group : MenuItemGroup

このプロパティには、そのアイテムが属するグループが格納されます。アイテムがどのグループにも属していない場合は、null が格納されます。

icon group

icon.mask : bool [since Qt.labs.platform 1.1 (Qt 5.12)]

icon.name : string [since Qt.labs.platform 1.1 (Qt 5.12)]

icon.source : url [since Qt.labs.platform 1.1 (Qt 5.12)]

このプロパティには、メニュー項目のアイコンが格納されます。

MenuItem {
    icon.mask: true
    icon.name: "edit-undo"
    icon.source: "qrc:/images/undo.png"
}

これらのプロパティは、Qt Labs Platform 1.1 (Qt 5.12) で導入されました。

QIcon::fromTheme()も参照してください 。

このプロパティには、その項目が属するメニューが格納されます。項目がどのメニューにも属していない場合は、null が格納されます。

role : enumeration

このプロパティは、項目の役割を指定します。この役割によって、その項目をmacOSのアプリケーションメニューに配置するかどうかが決まります。

利用可能な値:

定数説明
MenuItem.NoRoleこの項目はアプリケーションメニューに配置しない
MenuItem.TextHeuristicRoleアクションのテキストに基づいて、項目をアプリケーションメニューに配置する(デフォルト)
MenuItem.ApplicationSpecificRoleアプリケーション固有の役割を付与して、アプリケーションメニューにこの項目を追加する
MenuItem.AboutQtRoleこの項目は、「About Qt」メニュー項目を処理します。
MenuItem.AboutRoleこの項目は、アプリケーションメニューの「About」メニュー項目がある位置に配置する必要があります。メニュー項目のテキストは「About <アプリケーション名>」に設定されます。アプリケーション名は、アプリケーションのバンドル内にある `Info.plist ` ファイルから取得されます(Qt for macOS - デプロイメントを参照)。
MenuItem.PreferencesRoleこの項目は、アプリケーションメニュー内の「環境設定...」メニュー項目がある場所に配置する必要があります。
MenuItem.QuitRoleこの項目は、アプリケーションメニュー内の「終了」メニュー項目と同じ位置に配置する必要があります。

ロールの指定は、メニューバーの直接メニューにある項目にのみ影響し、それらのメニューのサブメニューにある項目には影響しません。 たとえば、メニューバーに「ファイル」メニューがあり、その「ファイル」メニューにサブメニューがある場合、そのサブメニュー内の項目に役割を指定しても効果はありません。それらはアプリケーションメニューに移動されることはありません。

separator : bool

このプロパティは、その項目が区切り線であるかどうかを指定します。デフォルト値はfalse です。

「MenuSeparator」も参照してください 。

shortcut : keysequence

このプロパティには、メニュー項目のショートカットが格納されます。

ショートカットキーのシーケンスは、standard keyboard shortcuts のいずれかに設定することも、ショートカットをtrigger するために必要な最大4回のキー入力のシーケンスを含む文字列で指定することもできます。

デフォルト値は、空のキーシーケンスです。

MenuItem {
    shortcut: "Ctrl+E,Ctrl+W"
    onTriggered: edit.wrapMode = TextEdit.Wrap
}

このプロパティには、その項目に含まれるサブメニューが格納されます。ただし、その項目がサブメニュー項目でない場合は、null が格納されます。

text : string

このプロパティには、メニュー項目のテキストが格納されます。

visible : bool

このプロパティは、その項目が表示されているかどうかを表します。デフォルト値はtrue です。

シグナルのドキュメント

hovered()

このシグナルは、ユーザーがメニュー項目にカーソルを合わせると発火します。

注: 対応するハンドラは `onHovered` です。

triggered()

このシグナルは、ユーザーがメニュー項目を操作した際に発生します。

注: 対応するハンドラは `onTriggered` です。

メソッドのドキュメント

void toggle()

checked の状態を、その反対の状態に切り替えます。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.