Spec-Zone.ru › Qt

Класс QSizeGrip

Класс QSizeGrip предоставляет маркер изменения размера для изменения размера окон верхнего уровня. Подробнее...

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

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

QSizeGrip(QWidget *parent)
virtual ~QSizeGrip()

Переопределенные открытые функции

virtual void setVisible(bool visible) override
virtual QSize sizeHint() const override

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

virtual bool event(QEvent *event) override
virtual bool eventFilter(QObject *o, QEvent *e) override
virtual void hideEvent(QHideEvent *hideEvent) override
virtual void mouseMoveEvent(QMouseEvent *event) override
virtual void mousePressEvent(QMouseEvent *event) override
virtual void mouseReleaseEvent(QMouseEvent *mouseEvent) override
virtual void moveEvent(QMoveEvent *moveEvent) override
virtual void paintEvent(QPaintEvent *event) override
virtual void showEvent(QShowEvent *showEvent) override

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

Этот виджет работает как стандартная ручка изменения размера в Windows. В X11-версии эта ручка изменения размера, как правило, работает по-другому, чем предоставленная системой, если диспетчер окон X11 не поддерживает необходимые современные спецификации после ICCCM.

Разместите этот виджет где угодно в дереве виджетов, и пользователь сможет использовать его для изменения размера окна верхнего уровня или любого виджета с флагом Qt::SubWindow. Обычно он должен находиться в правом нижнем углу.

Обратите внимание, что QStatusBar уже использует этот виджет, поэтому если у вас есть строка состояния (например, вы используете QMainWindow), то вам не нужно явно использовать этот виджет. То же самое относится к QDialog, для которого можно просто вызвать QDialog::setSizeGripEnabled().

На некоторых платформах маркер изменения размера автоматически скрывается, когда окно отображается в полноэкранном режиме или максимизировано.

Примечание: На macOS маркеры изменения размера больше не являются частью руководства по человеко-машинному интерфейсу и не будут отображаться, если не используются в QMdiSubWindow. Установите другой стиль для маркеров изменения размера, которые вы хотите видеть в главном окне.

Screenshot of a Fusion style size grip Виджет маркер изменения размера в правом нижнем углу главного окна, показанный в стиле виджетов Fusion.

Класс QSizeGrip наследует QWidget и переопределяет функции mousePressEvent() и mouseMoveEvent() для обеспечения функциональности изменения размера, а также функцию paintEvent() для отрисовки виджета маркера изменения размера.

См. также QStatusBar и QWidget::windowState().

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

QSizeGrip::QSizeGrip(QWidget *parent)

Создает уголок изменения размера как виджет-потомка заданного parent.

[virtual] QSizeGrip::~QSizeGrip()

Уничтожает этот маркер изменения размера.

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

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

[override virtual protected] bool QSizeGrip::eventFilter(QObject *o, QEvent *e)

Переопределяет: QObject::eventFilter(QObject *watched, QEvent *event).

[override virtual protected] void QSizeGrip::hideEvent(QHideEvent *hideEvent)

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

[override virtual protected] void QSizeGrip::mouseMoveEvent(QMouseEvent *event)

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

Изменяет размер виджета верхнего уровня, содержащего этот виджет. Событие перемещения мыши передается в параметре event.

[override virtual protected] void QSizeGrip::mousePressEvent(QMouseEvent *event)

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

Получает события нажатия мыши для виджета и подготавливает операцию изменения размера. Событие нажатия мыши передается в параметре event.

[override virtual protected] void QSizeGrip::mouseReleaseEvent(QMouseEvent *mouseEvent)

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

[override virtual protected] void QSizeGrip::moveEvent(QMoveEvent *moveEvent)

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

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

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

Отображает маркер изменения размера.

Маркеры изменения размера обычно отображаются как небольшие диагональные текстурированные линии в правом нижнем углу. Событие отрисовки передается в параметре event.

[override virtual] void QSizeGrip::setVisible(bool visible)

Переопределяет функцию доступа к свойству: QWidget::visible.

[override virtual protected] void QSizeGrip::showEvent(QShowEvent *showEvent)

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

[override virtual] QSize QSizeGrip::sizeHint() const

Переопределяет функцию доступа к свойству: QWidget::sizeHint.

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

Spec-Zone.ru

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