MenuStyle QML Type
Provides custom styling for Menu More...
Import Statement: | import QtQuick.Controls.Styles 1.4 |
Since: | Qt 5.3 |
Properties
- font : font
- frame : Component
- itemDelegate : Object
- scrollIndicator : Component
- separator : Component
- submenuOverlap : int
- submenuPopupDelay : int
Methods
- string formatMnemonic(string text, bool underline)
Detailed Description
The styleData object contains the following read-only properties:
styleData.index : int | The index of the menu item in its menu. |
styleData.type : enumeration | The type of menu item. See below for possible values. |
styleData.selected : bool |
true if the menu item is selected. |
styleData.pressed : bool |
true if the menu item is pressed. Available since 5.4. |
styleData.text : string | The menu item's text, or title if it's a submenu. |
styleData.underlineMnemonic : bool | Whether the style should underline the menu item's label mnemonic. |
styleData.shortcut : string | The text for the menu item's shortcut. |
styleData.iconSource : url | The source URL to the menu item's icon. Undefined if it has no icon. |
styleData.enabled : bool |
true if the menu item is enabled. |
styleData.checkable : bool |
true if the menu item is checkable. |
styleData.exclusive : bool |
true if the menu item is checkable, and it's part of an ExclusiveGroup. |
styleData.checked : bool |
true if the menu item is checkable and currently checked. |
styleData.scrollerDirection : enumeration | If the menu item is a scroller, its pointing direction. Valid values are Qt.UpArrow , Qt.DownArrow , and Qt.NoArrow . |
The valid values for styleData.type are:
- MenuItemType.Item
- MenuItemType.Menu
- MenuItemType.Separator
- MenuItemType.ScrollIndicator
Note: Styling menus may not be supported on platforms using native menus through their QPA plugin.
Property Documentation
font : font
The font of the control.
This QML property was introduced in QtQuick.Controls.Styles 1.3.
frame : Component
The background frame for the menu popup.
The Menu will resize the frame to its contents plus the padding.
itemDelegate : Object
The object containing the menu item subcontrol components. These subcontrols are used for normal menu items only, i.e. not for separators or scroll indicators.
The subcontrols are:
-
itemDelegate.background : Component
The menu item background component.
Its appearance generally changes with styleData.selected and styleData.enabled.
The default implementation shows only when the item is enabled and selected. It remains invisible otherwise.
-
itemDelegate.label : Component
Component for the actual text label.
The text itself is fetched from styleData.text, and its appearance should depend on styleData.enabled and styleData.selected.
If styleData.underlineMnemonic is true, the label should underline its mnemonic character. formatMnemonic provides the default formatting.
-
itemDelegate.submenuIndicator : Component
It indicates that the current menu item is a submenu.
Only used when styleData.type equals
MenuItemType.Menu
. -
itemDelegate.shortcut : Component
Displays the shortcut attached to the menu item.
Only used when styleData.shortcut is not empty.
-
itemDelegate.checkmarkIndicator : Component
Will be used when styleData.checkable is
true
and its appearance may depend on styleData.exclusive, i.e., whether it will behave like a checkbox or a radio button. Use styleData.checked for the checked state.
Note: This property cannot be overwritten although all of the subcontrol properties can.
scrollIndicator : Component
Component for the scroll indicator menu item.
Will be used when styleData.type equals MenuItemType.ScrollIndicator
. Its appearance should follow styleData.scrollerDirection.
This is the item added at the top and bottom of the menu popup when its contents won't fit the screen to indicate more content is available in the direction of the arrow.
separator : Component
Component for the separator menu item.
Will be used when styleData.type equals MenuItemType.Separator
.
submenuOverlap : int
The amount of pixels by which a submenu popup overlaps horizontally its parent menu.
submenuPopupDelay : int
The number of milliseconds to wait before opening a submenu.
Method Documentation
string formatMnemonic(string text, bool underline = false)
Returns a rich-text string to render mnemonics for a given menu item.
The mnemonic character is prefixed by an ampersand in the original string.
Passing true
for underline
will underline the mnemonic character (e.g., formatMnemonic("&Open...", true)
will return "<u>O</u>pen..."
). Passing false
for underline
will return the plain text form (e.g., formatMnemonic("&Open...", false)
will return "Open..."
).
See also Label.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtquick-controls-styles-menustyle.html