ToolButton - Кнопка с инструментом
- class axipy.ToolButton
Базовые классы:
Button
Переключаемая кнопка с инструментом.
См.также
Примерfrom typing import Optional import axipy # Класс инструмента class MyTool(axipy.ViewTool): def __init__(self, param: str) -> None: self._param: str = param def on_create_tool(view_type: axipy.ViewTool.ViewType) -> Optional[axipy.ViewTool]: if view_type == axipy.ViewTool.ViewType.MAP_VIEW: # Если необходимо передавать параметры в инструмент, то их можно передать в конструктор инструмента # внутри функции: param = "Передаваемый параметр" return MyTool(param) return None # Создание кнопки с инструментом button = axipy.ToolButton( title="Мой инструмент", on_create_tool=on_create_tool, ) # Добавление кнопки на панель "Основные", на вкладку "Команды" position = axipy.Position("Основные", "Команды") position.add(button) # Чтобы удалить добавленную кнопку нужно вызвать remove, или перезапустить приложение. # button.remove()
Конструктор класса:
__init__
(title, on_create_tool[, icon, ...])Конструктор класса.
Свойства:
Возвращает ссылку на объект
PySide2.QtWidgets.QAction
.Возвращает признак, нажата ли кнопка.
Возвращает наблюдатель для определения доступности кнопки.
Возвращает идентификатор наблюдателя для определения доступности кнопки.
Методы:
remove
()Удаляет кнопку из меню.
- __init__(title: str, on_create_tool: Callable[[ViewType], Optional[ViewTool]], icon: Union[str, Path, QIcon] = '', enable_on: Optional[Observer] = None, tooltip: Optional[str] = None, doc_file: Optional[Union[str, Path]] = None, on_toggle: Optional[Callable[[bool], None]] = None)
Конструктор класса.
- Параметры:
title – Текст.
on_create_tool – Функция создающая инструмент. Передается функция, которая будет вызвана в момент создания инструмента для карты. Функция должна принимать обязательный параметр типа
axipy.ViewTool.ViewType
и возвращать экземплярaxipy.ViewTool
илиNone
.icon – Иконка. Может быть путем к файлу или адресом ресурса.
enable_on – Наблюдатель, для определения доступности кнопки.
tooltip – Строка с дополнительной короткой информацией по данному действию.
doc_file – Полный путь к html файлу с документацией.
on_toggle – Действие на нажатие. Передается функция, которая будет вызвана при нажатии на кнопку.
- property action: QAction
Возвращает ссылку на объект
PySide2.QtWidgets.QAction
. Через него можно производить дополнительные необходимые действия через объект Qt.Пример задания всплывающей подсказки, используя метод класса
PySide2.QtWidgets.QAction
:button.action.setToolTip("Всплывающая подсказка")
- remove()
Удаляет кнопку из меню.