Тип QML Menu
Предоставляет компонент меню для использования в качестве контекстного меню, всплывающего меню или в качестве части меню-строки. Подробнее...
| Заявление импорта: | import QtQuick.Controls 1.4 |
| С тех пор: | Qt 5.1 |
Свойства
- enabled : bool
- iconName : строка
- iconSource : url
- items : список<Объект>
- style : Компонент
- title : строка
- type : перечисление
- visible : bool
Сигналы
Методы
- ЭлементМеню addItem(строка text)
- Меню addMenu(строка title)
- void addSeparator()
- void insertItem(int before, object item)
- ЭлементМеню insertItem(int before, строка title)
- ЭлементМеню insertMenu(int before, строка title)
- void insertSeparator(int before)
- void popup()
- void removeItem(item)
Подробное описание
Menu {
title: "Edit"
MenuItem {
text: "Cut"
shortcut: "Ctrl+X"
onTriggered: ...
}
MenuItem {
text: "Copy"
shortcut: "Ctrl+C"
onTriggered: ...
}
MenuItem {
text: "Paste"
shortcut: "Ctrl+V"
onTriggered: ...
}
MenuSeparator { }
Menu {
title: "More Stuff"
MenuItem {
text: "Do Nothing"
}
}
} Основные варианты использования меню:
- в качестве главного меню в MenuBar
- в качестве подменю внутри другого меню
- в качестве самостоятельного или контекстного меню
Обратите внимание, что некоторые свойства, такие как enabled, text, или iconSource, имеют смысл только в конкретном случае использования меню.
См. также MenuBar, MenuItem и MenuSeparator.
Документация свойств
enabled : bool
Включено ли меню и реагирует ли оно на взаимодействие пользователя в качестве подменю. Его значение по умолчанию равно true.
iconName : строка
Устанавливает имя значка для значка меню. Это позволит выбрать значок с заданным именем из текущей темы. Работает только как подменю.
Значение по умолчанию — пустая строка.
См. также iconSource.
iconSource : url
Устанавливает URL-адрес файла или ресурса значка для значка меню в виде подменю. Значение по умолчанию — пустой URL.
См. также iconName.
[default] items : список<Объект>
Список элементов в меню.
Меню принимает только объекты типа Меню, ЭлементМеню и РазделительМеню в качестве дочерних элементов. Также поддерживает объекты Instantiator, если вставка выполняется вручную с помощью insertItem().
Menu {
id: recentFilesMenu
Instantiator {
model: recentFilesModel
MenuItem {
text: model.fileName
}
onObjectAdded: recentFilesMenu.insertItem(index, object)
onObjectRemoved: recentFilesMenu.removeItem(object)
}
MenuSeparator {
visible: recentFilesModel.count > 0
}
MenuItem {
text: "Clear menu"
enabled: recentFilesModel.count > 0
onTriggered: recentFilesModel.clear()
}
} Обратите внимание, что в этом случае параметр index, переданный в insertItem(), относится к позиции Instantiator в меню, а не к абсолютному положению в меню.
См. также ЭлементМеню и РазделительМеню.
style : Компонент
Компонент стиля для этого элемента управления.
Это свойство было добавлено в QtQuick.Controls.Styles 1.2.
См. также MenuStyle.
title : строка
Заголовок меню как подменю или в меню-строке.
Мемоники поддерживаются путем добавления символа быстрого доступа перед буквой сокращения, например, "\&File" будет связывать комбинацию клавиш Alt-F с меню "File". Обратите внимание, что не все платформы поддерживают мемоники.
Значение по умолчанию — пустая строка.
type : перечисление
Это свойство является только для чтения и постоянным, и его значение равно type.
visible : bool
Должен ли быть виден элемент меню как подменю другого меню или как меню на MenuBar. Значение по умолчанию — true.
Примечание: Это не имеет отношения к фактическому видимому окну всплывающего меню. Используйте aboutToShow() и aboutToHide(), если вам нужно знать, когда всплывающее окно будет показано или скрыто.
Документация сигналов
aboutToHide()
Этот сигнал излучается незадолго до скрытия меню от пользователя.
Примечание: Соответствующий обработчик — onAboutToHide.
Этот сигнал был представлен в QtQuick.Controls 1.4.
См. также aboutToShow().
aboutToShow()
Этот сигнал излучается незадолго до отображения меню пользователю.
Примечание: Соответствующий обработчик — onAboutToShow.
Этот сигнал был представлен в QtQuick.Controls 1.4.
См. также aboutToHide().
Документация методов
ЭлементМеню addItem(строка text)
Добавляет элемент text в меню. Возвращает только что созданный ЭлементМеню.
См. также insertItem().
Добавляет подменю с заголовком title в меню. Возвращает только что созданное Меню.
См. также insertMenu().
void addSeparator()
Добавляет разделитель в меню.
См. также insertSeparator().
void insertItem(int before, object item)
Вставляет item в индекс before в текущем меню. В данном случае item может быть ЭлементМеню, РазделительМеню или Меню.
См. также removeItem().
ЭлементМеню insertItem(int before, строка title)
Создаёт и вставляет элемент с заголовком title в индекс before в текущем меню. Возвращает созданный ЭлементМеню.
См. также addItem().
ЭлементМеню insertMenu(int before, строка title)
Создаёт и вставляет подменю с заголовком title в индекс before в текущем меню. Возвращает созданное Меню.
См. также addMenu().
void insertSeparator(int before)
Создаёт и вставляет разделитель в индекс before в текущем меню.
См. также addSeparator().
void popup()
Открывает это меню под курсором мыши. На некоторых платформах оно может заблокироваться, поэтому протестируйте его соответствующим образом.
void removeItem(item)
Удаляет item из меню. В данном случае, item может быть элементом MenuItem, разделителем MenuSeparator или меню Menu.
См. также insertItem().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-controls-menu.html