QSizeGrip Class

Die Klasse QSizeGrip bietet einen Größenänderungsgriff für die Größenänderung von Fenstern der obersten Ebene. Mehr...

Kopfzeile: #include <QSizeGrip>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbt: QWidget

Öffentliche Funktionen

QSizeGrip(QWidget *parent)
virtual ~QSizeGrip()

Reimplementierte öffentliche Funktionen

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

Reimplementierte geschützte Funktionen

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

Detaillierte Beschreibung

Dieses Widget funktioniert wie das Standard-Windows-Größenänderungs-Handle. In der X11-Version funktioniert dieses Größenänderungs-Handle im Allgemeinen anders als das vom System bereitgestellte, wenn der X11-Fenstermanager die notwendigen modernen Post-ICCCM-Spezifikationen nicht unterstützt.

Platzieren Sie dieses Widget an einer beliebigen Stelle in einem Widgetbaum und der Benutzer kann es verwenden, um die Größe des Fensters der obersten Ebene oder eines beliebigen Widgets mit gesetztem Qt::SubWindow -Flag zu ändern. Im Allgemeinen sollte es sich in der unteren rechten Ecke befinden.

Beachten Sie, dass QStatusBar dieses Widget bereits verwendet. Wenn Sie also eine Statusleiste haben (z. B. wenn Sie QMainWindow verwenden), brauchen Sie dieses Widget nicht explizit zu verwenden. Dasselbe gilt für QDialog, für das Sie einfach QDialog::setSizeGripEnabled() aufrufen können.

Auf einigen Plattformen versteckt sich das Größen-Widget automatisch, wenn das Fenster im Vollbildmodus oder maximiert angezeigt wird.

Hinweis: Unter macOS sind Größenleisten nicht mehr Teil der Richtlinien für die Benutzeroberfläche und werden nicht angezeigt, es sei denn, sie werden in einem QMdiSubWindow verwendet. Legen Sie einen anderen Stil für Größenleisten fest, die in Hauptfenstern sichtbar sein sollen.

Screenshot einer Größenleiste im Fusion-StilEin Größengriff-Widget in der unteren rechten Ecke eines Hauptfensters, dargestellt im Fusion-Widget-Stil.

Die Klasse QSizeGrip erbt QWidget und implementiert die Funktionen mousePressEvent() und mouseMoveEvent(), um die Größenänderung zu ermöglichen, sowie die Funktion paintEvent(), um das Größen-Grip-Widget darzustellen.

Siehe auch QStatusBar und QWidget::windowState().

Dokumentation der Mitgliedsfunktionen

[explicit] QSizeGrip::QSizeGrip(QWidget *parent)

Konstruiert eine Größenänderungsecke als untergeordnetes Widget des angegebenen parent.

[virtual noexcept] QSizeGrip::~QSizeGrip()

Zerstört den Griff dieser Größe.

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

Reimplements: QWidget::event(QEvent *Event).

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

Reimplements: QObject::eventFilter(QObject *watched, QEvent *event).

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

Reimplements: QWidget::hideEvent(QHideEvent *event).

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

Reimplements: QWidget::mouseMoveEvent(QMouseEvent *event).

Ändert die Größe des Widgets der obersten Ebene, das dieses Widget enthält. Das Mausbewegungsereignis wird im Parameter event übergeben.

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

Reimplements: QWidget::mousePressEvent(QMouseEvent *event).

Empfängt die Mausdruckereignisse für das Widget und bereitet die Größenänderung vor. Das Maustastenereignis wird im Parameter event übergeben.

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

Reimplements: QWidget::mouseReleaseEvent(QMouseEvent *event).

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

Reimplements: QWidget::moveEvent(QMoveEvent *event).

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

Reimplements: QWidget::paintEvent(QPaintEvent *event).

Zeichnet den Griff zur Größenänderung.

Größenveränderte Griffe werden normalerweise als kleine diagonale texturierte Linien in der unteren rechten Ecke dargestellt. Das Malereignis wird im Parameter event übergeben.

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

Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::visible.

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

Reimplements: QWidget::showEvent(QShowEvent *event).

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

Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::sizeHint.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.