Spec-Zone.ru › Qt

Класс QToolBar

Класс QToolBar предоставляет перемещаемую панель, содержащую набор элементов управления. Подробнее...

Заголовок: #include <QToolBar>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Наследует: QWidget
  • Список всех членов, включая унаследованные члены

Свойства

  • allowedAreas : Qt::ToolBarAreas
  • floatable : bool
  • floating : const bool
  • iconSize : QSize
  • movable : bool
  • orientation : Qt::Orientation
  • toolButtonStyle : Qt::ToolButtonStyle

Открытые функции

QToolBar(QWidget *parent = nullptr)
QToolBar(const QString &title, QWidget *parent = nullptr)
virtual ~QToolBar()
QAction * actionAt(const QPoint &p) const
QAction * actionAt(int x, int y) const
QAction * addAction(const QString &text)
QAction * addAction(const QIcon &icon, const QString &text)
QAction * addAction(const QString &text, const QObject *receiver, const char *member)
QAction * addAction(const QIcon &icon, const QString &text, const QObject *receiver, const char *member)
QAction * addAction(const QString &text, Functor functor)
QAction * addAction(const QString &text, const QObject *context, Functor functor)
QAction * addAction(const QIcon &icon, const QString &text, Functor functor)
QAction * addAction(const QIcon &icon, const QString &text, const QObject *context, Functor functor)
QAction * addSeparator()
QAction * addWidget(QWidget *widget)
Qt::ToolBarAreas allowedAreas() const
void clear()
QSize iconSize() const
QAction * insertSeparator(QAction *before)
QAction * insertWidget(QAction *before, QWidget *widget)
bool isAreaAllowed(Qt::ToolBarArea area) const
bool isFloatable() const
bool isFloating() const
bool isMovable() const
Qt::Orientation orientation() const
void setAllowedAreas(Qt::ToolBarAreas areas)
void setFloatable(bool floatable)
void setMovable(bool movable)
void setOrientation(Qt::Orientation orientation)
QAction * toggleViewAction() const
Qt::ToolButtonStyle toolButtonStyle() const
QWidget * widgetForAction(QAction *action) const

Открытые слоты

void setIconSize(const QSize &iconSize)
void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle)

Сигналы

void actionTriggered(QAction *action)
void allowedAreasChanged(Qt::ToolBarAreas allowedAreas)
void iconSizeChanged(const QSize &iconSize)
void movableChanged(bool movable)
void orientationChanged(Qt::Orientation orientation)
void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)
void topLevelChanged(bool topLevel)
void visibilityChanged(bool visible)

Переопределённые защищённые функции

virtual void actionEvent(QActionEvent *event) override
virtual void changeEvent(QEvent *event) override
virtual bool event(QEvent *event) override
virtual void paintEvent(QPaintEvent *event) override

Подробное описание

Кнопки панели инструментов добавляются путем добавления действий, используя addAction() или insertAction(). Группы кнопок могут быть разделены с помощью addSeparator() или insertSeparator(). Если кнопка панели инструментов не подходит, вместо неё можно вставить виджет, используя addWidget() или insertWidget(). Примерами подходящих виджетов являются QSpinBox, QDoubleSpinBox и QComboBox. При нажатии кнопки панели инструментов генерится сигнал actionTriggered().

Панель инструментов может быть закреплена в определённой области (например, в верхней части окна), или она может перемещаться между областями панели инструментов; см. setMovable(), isMovable(), allowedAreas() и isAreaAllowed().

При изменении размера панели инструментов таким образом, что она становится слишком маленькой для отображения всех элементов, кнопка расширения появится как последний элемент в панели инструментов. Нажатие на кнопку расширения откроет меню, содержащее элементы, которые в данный момент не помещаются в панель инструментов.

Если QToolBar не является дочерним элементом QMainWindow, она теряет возможность заполнять всплывающее окно расширения виджетами, добавленными в панель инструментов с помощью addWidget(). Вместо этого используйте действия виджетов, созданные путём наследования QWidgetAction и реализацией QWidgetAction::createWidget().

См. также QToolButton, QMenu, QAction и Qt Widgets - Application Example.

Документация по свойствам

allowedAreas : Qt::ToolBarAreas

области, в которых может размещаться панель инструментов

По умолчанию - Qt::AllToolBarAreas.

Это свойство имеет смысл только если панель инструментов находится в QMainWindow.

Функции доступа:

Qt::ToolBarAreas allowedAreas() const
void setAllowedAreas(Qt::ToolBarAreas areas)

Сигнал оповещения:

void allowedAreasChanged(Qt::ToolBarAreas allowedAreas)

См. также movable.

floatable : bool

Это свойство содержит значение, определяющее, можно ли перетаскивать панель инструментов в качестве независимого окна.

По умолчанию значение равно true.

Функции доступа:

bool isFloatable() const
void setFloatable(bool floatable)

[read-only] floating : const bool

Это свойство содержит значение, определяющее, является ли панель инструментов независимым окном.

По умолчанию это свойство равно true.

Функции доступа:

bool isFloating() const

См. также QWidget::isWindow().

iconSize : QSize

размер значков на панели инструментов.

Размер по умолчанию определяется стилем приложения и выводится из пиксельного параметра QStyle::PM_ToolBarIconSize. Это максимальный размер значка. Значки меньшего размера не будут масштабироваться.

Функции доступа:

QSize iconSize() const
void setIconSize(const QSize &iconSize)

Сигнал оповещения:

void iconSizeChanged(const QSize &iconSize)

movable : bool

Это свойство содержит значение, определяющее, может ли пользователь перемещать панель инструментов в пределах области панели инструментов или между областями панели инструментов.

По умолчанию это свойство равно true.

Это свойство имеет смысл только если панель инструментов находится в QMainWindow.

Функции доступа:

bool isMovable() const
void setMovable(bool movable)

Сигнал оповещения:

void movableChanged(bool movable)

См. также allowedAreas.

orientation : Qt::Orientation

ориентация панели инструментов

По умолчанию - Qt::Horizontal.

Эта функция не должна использоваться, когда панель инструментов управляется QMainWindow. Вы можете использовать QMainWindow::addToolBar() или QMainWindow::insertToolBar(), если хотите переместить панель инструментов, уже добавленную в главное окно, в другую область Qt::ToolBarArea.

Функции доступа:

Qt::Orientation orientation() const
void setOrientation(Qt::Orientation orientation)

Сигнал оповещения:

void orientationChanged(Qt::Orientation orientation)

toolButtonStyle : Qt::ToolButtonStyle

Это свойство содержит стиль кнопок панели инструментов

Это свойство определяет стиль всех кнопок инструментов, которые добавляются как QActions. Обратите внимание, что если вы добавляете QToolButton с помощью метода addWidget(), этот стиль к ней не применяется.

Чтобы стиль кнопок следовал настройкам системы, установите это свойство в Qt::ToolButtonFollowStyle. В Unix-системах будут использоваться настройки пользователя из среды рабочего стола. На других платформах Qt::ToolButtonFollowStyle означает только значок.

По умолчанию - Qt::ToolButtonIconOnly.

Функции доступа:

Qt::ToolButtonStyle toolButtonStyle() const
void setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle)

Сигнал оповещения:

void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)

Документация по членам-функциям

QToolBar::QToolBar(QWidget *parent = nullptr)

Конструирует QToolBar с заданным parent.

QToolBar::QToolBar(const QString &title, QWidget *parent = nullptr)

Конструирует QToolBar с заданным parent.

Указанное заголовок окна title идентифицирует панель инструментов и отображается в контекстном меню, предоставляемом QMainWindow.

См. также setWindowTitle().

[signal] void QToolBar::actionTriggered(QAction *action)

Этот сигнал генерируется при срабатывании действия в этой панели инструментов. Это происходит при нажатии кнопки действия или при срабатывании действия каким-либо другим способом вне панели инструментов. Параметр содержит сработавшее действие.

[signal] void QToolBar::allowedAreasChanged(Qt::ToolBarAreas allowedAreas)

Этот сигнал генерируется при изменении набора разрешённых областей для панели инструментов. Новые области, в которых может быть размещена панель инструментов, задаются allowedAreas.

Примечание: Сигнал оповещения для свойства allowedAreas.

См. также allowedAreas.

[signal] void QToolBar::iconSizeChanged(const QSize &iconSize)

Этот сигнал излучается при изменении размера значка. Параметр iconSize содержит новый размер значка панели инструментов.

Примечание: Сигнал-уведомление для свойства iconSize.

См. также iconSize и QMainWindow::iconSize.

[signal] void QToolBar::movableChanged(bool movable)

Этот сигнал излучается при том, как панель инструментов становится перемещаемой или фиксированной. Если панель инструментов может быть перемещена, movable имеет значение true, иначе — false.

Примечание: Сигнал-уведомление для свойства movable.

См. также movable.

[signal] void QToolBar::orientationChanged(Qt::Orientation orientation)

Этот сигнал излучается при изменении ориентации панели инструментов. Параметр orientation содержит новую ориентацию панели инструментов.

Примечание: Сигнал-уведомление для свойства orientation.

См. также orientation.

[signal] void QToolBar::toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)

Этот сигнал излучается при изменении стиля кнопки инструмента. Параметр toolButtonStyle содержит новый стиль кнопки инструмента панели инструментов.

Примечание: Сигнал-уведомление для свойства toolButtonStyle.

См. также toolButtonStyle и QMainWindow::toolButtonStyle.

[signal] void QToolBar::topLevelChanged(bool topLevel)

Этот сигнал излучается при изменении свойства floating. Параметр topLevel имеет значение true, если панель инструментов теперь плавающая, иначе — false.

См. также isWindow().

[signal] void QToolBar::visibilityChanged(bool visible)

Этот сигнал излучается, когда панель инструментов становится видимой (или невидимой). Это происходит при скрытии или отображении виджета.

[virtual] QToolBar::~QToolBar()

Уничтожает панель инструментов.

QAction *QToolBar::actionAt(const QPoint &p) const

Возвращает действие в точке p. Эта функция возвращает ноль, если действие не найдено.

См. также QWidget::childAt().

QAction *QToolBar::actionAt(int x, int y) const

Это перегруженная функция.

Возвращает действие в точке x, y. Эта функция возвращает ноль, если действие не найдено.

[override virtual protected] void QToolBar::actionEvent(QActionEvent *event)

Переопределяет: QWidget::actionEvent(QActionEvent *event).

QAction *QToolBar::addAction(const QString &text)

Создает новое действие с заданным текстом text. Это действие добавляется в конец панели инструментов.

QAction *QToolBar::addAction(const QIcon &icon, const QString &text)

Это перегруженная функция.

Создает новое действие с заданным значком icon и текстом text. Это действие добавляется в конец панели инструментов.

QAction *QToolBar::addAction(const QString &text, const QObject *receiver, const char *member)

Это перегруженная функция.

Создает новое действие с заданным текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к member в receiver.

QAction *QToolBar::addAction(const QIcon &icon, const QString &text, const QObject *receiver, const char *member)

Это перегруженная функция.

Создает новое действие с заданным значком icon и текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к member в receiver.

[since 5.6] template <typename Functor> QAction *QToolBar::addAction(const QString &text, Functor functor)

Это перегруженная функция.

Создает новое действие с заданным текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к functor.

Эта функция была добавлена в Qt 5.6.

[since 5.6] template <typename Functor> QAction *QToolBar::addAction(const QString &text, const QObject *context, Functor functor)

Это перегруженная функция.

Создает новое действие с заданным текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к functor. Functor может быть указателем на член-функцию в объекте context.

Если объект context уничтожен, functor не будет вызван.

Эта функция была добавлена в Qt 5.6.

[since 5.6] template <typename Functor> QAction *QToolBar::addAction(const QIcon &icon, const QString &text, Functor functor)

Это перегруженная функция.

Создает новое действие с заданным значком icon и текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к functor.

Эта функция была добавлена в Qt 5.6.

[since 5.6] template <typename Functor> QAction *QToolBar::addAction(const QIcon &icon, const QString &text, const QObject *context, Functor functor)

Это перегруженная функция.

Создает новое действие с заданным значком icon и текстом text. Это действие добавляется в конец панели инструментов. Сигнал triggered() действия подключается к functor. Functor может быть указателем на член-функцию объекта context.

Если объект context уничтожен, functor не будет вызван.

Эта функция была добавлена в Qt 5.6.

QAction *QToolBar::addSeparator()

Добавляет разделитель в конец панели инструментов.

См. также insertSeparator().

QAction *QToolBar::addWidget(QWidget *widget)

Добавляет данный виджет widget в панель инструментов как последний элемент.

Панель инструментов берет на себя владение widget.

Если вы добавляете QToolButton с помощью этого метода, стиль панели инструментов Qt::ToolButtonStyle не будет соблюдаться.

Примечание: Вы должны использовать QAction::setVisible(), чтобы изменить видимость виджета. Использование QWidget::setVisible(), QWidget::show() и QWidget::hide() не работает.

См. также insertWidget().

[override virtual protected] void QToolBar::changeEvent(QEvent *event)

Переопределяет: QWidget::changeEvent(QEvent *event).

void QToolBar::clear()

Удаляет все действия из панели инструментов.

См. также removeAction().

[override virtual protected] bool QToolBar::event(QEvent *event)

Переопределяет: QWidget::event(QEvent *event).

QAction *QToolBar::insertSeparator(QAction *before)

Вставляет разделитель в панель инструментов перед элементом панели инструментов, связанным с действием before.

END_OF_DOCUMENT_MARKER

См. также addSeparator().

QAction *QToolBar::insertWidget(QAction *before, QWidget *widget)

Вставляет заданный widget перед элементом панели инструментов, связанным с действием before.

Примечание: Для изменения видимости виджета следует использовать QAction::setVisible(). Использование QWidget::setVisible(), QWidget::show() и QWidget::hide() не работает.

См. также addWidget().

bool QToolBar::isAreaAllowed(Qt::ToolBarArea area) const

Возвращает true , если данная панель инструментов может быть прикреплена к указанной области area; в противном случае возвращает false.

[override virtual protected] void QToolBar::paintEvent(QPaintEvent *event)

Переопределяет: QWidget::paintEvent(QPaintEvent *event).

QAction *QToolBar::toggleViewAction() const

Возвращает управляемое действие, которое можно использовать для показа или скрытия этой панели инструментов.

Текст действия устанавливается в заголовок окна панели инструментов.

См. также QAction::text и QWidget::windowTitle.

QWidget *QToolBar::widgetForAction(QAction *action) const

Возвращает виджет, связанный с указанным действием action.

См. также addWidget().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qtoolbar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API