RibbonExtension¶
-
class
axioma.gui.extension.
RibbonExtension
¶ Класс для добавления элементов в ленточный интерфейс. Идентификаторы ленточного интерфейса для стандартных элементов можно получить из класса
RibbonId
Методы:
-
addAction
(id, tabId, groupId[, rowSpan = 1, columnSpan = 1, row = -1, column = -1])¶ Добавление кнопки действия или инструмента в ленточный интерфейс. Размер и положение кнопки измеряется ячейками 16x16 пикселей.
- Параметры
id (
str
) – Идентификатор кнопки действия или инструментаtabId (
str
) – Идентификатор вкладкиgroupId (
str
) – Идентификатор группыrowSpan (
int
) – вертикальный размер кнопки в группеcolumnSpan (
int
) – горизонтальный размер кнопки в группеrow (
int
) – вертикальная позиция кнопки в группеcolumn (
int
) – горизонтальная позиция кнопки в группе
-
addCategory
(id, text)¶ Добавление категории команд.
-
addGroup
(tabId, id, text)¶ Добавление группы внутри вкладки.
-
Идентификаторы ленточного интерфейса для стандартных категорий можно получить из класса RibbonId
Пример использования:
# Получаем ссылку на существующий интерфейс приложения ribbonExt = axioma.gui.extension.RibbonExtension() # Добавляем новую группу во каладку с инструментами для карты ribbonExt.addGroup("map","MyGroupId", "Описание") # Добавляем действие в созданную группу ribbonExt.addAction("MyActionId", "map", "MyGroupId") # Расширение, добавляющее QAction, создаваемый функцией createAction actionExt = axioma.gui.extension.ActionExtension(createAction, "ExampleActionId") # Пример функции createAction def createAction(parent): action = PyQt5.QtWidgets.QAction(parent) action.setText("Действие") action.triggered.connect(lambda: QMessageBox.information(axioma.app.mainWindow, "Заголовок", "Сообщение") ) return action