ToolButton - Кнопка с инструментом

class axipy.menubar.ToolButton(title, on_click, icon='', enable_on=None, tooltip=None)

Базовые классы: axipy.menubar.Button

Кнопка с инструментом.

Параметры
  • title (str) – Текст.

  • on_click (Callable[[], MapTool]) – Класс инструмента, наследник от :class:“axipy.gui.MapTool“.

  • icon (Union[str, QIcon]) – Иконка. Может быть путем к файлу или адресом ресурса.

  • enable_on (Union[str, DefaultKeys, None]) – Идентификатор наблюдателя для определения доступности кнопки.

См.также

axipy.da.StateManager.

Пример
# Класс инструмента
class MyTool(MapTool):
    pass
param = 'Передаваемый параметр' 
# Передача имени класса MapTool как параметр
button = ToolButton('Мой инструмент', MyTool)
# Если необходимо передавать параметры в конструктор, то можно передать как конструктор
# внутри lambda функции
button = ToolButton('Мой инструмент', lambda: MyTool(param))

Attributes:

action

Ссылка на объект QAction.

observer_id

Идентификатор наблюдателя для определения доступности инструмента.

Methods:

remove()

Удаляет кнопку из меню.

property action

Ссылка на объект QAction. Через него можно производить дополнительные необходимые действия через объект Qt.

Пример задания всплывающей подсказки, используя метод класса QAction:

button.action.setToolTip('Всплывающая подсказка')
Тип результата

QAction

property observer_id

Идентификатор наблюдателя для определения доступности инструмента.

Тип результата

str

remove()

Удаляет кнопку из меню.