QFocusFrame Class

Das QFocusFrame-Widget bietet einen Fokusrahmen, der außerhalb des normalen Malbereichs eines Widgets liegen kann. Mehr...

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

Öffentliche Funktionen

QFocusFrame(QWidget *parent = nullptr)
virtual ~QFocusFrame()
void setWidget(QWidget *widget)
QWidget *widget() const

Geschützte Funktionen

virtual void initStyleOption(QStyleOption *option) const

Reimplementierte geschützte Funktionen

virtual bool event(QEvent *e) override
virtual bool eventFilter(QObject *o, QEvent *e) override
virtual void paintEvent(QPaintEvent *) override

Detaillierte Beschreibung

Normalerweise muss eine Anwendung keinen eigenen QFocusFrame erstellen, da QStyle dieses Detail für Sie erledigt. Ein Style Writer kann optional einen QFocusFrame verwenden, um einen Fokusbereich außerhalb der malbaren Geometrie des Widgets zu haben. Auf diese Weise muss kein Platz für das Widget reserviert werden, um den Fokus zu haben, sondern nur auf QWidget mit QFocusFrame::setWidget gesetzt werden. Es ist jedoch legal, Ihren eigenen QFocusFrame auf einem benutzerdefinierten Widget zu erstellen und seine Geometrie manuell über QWidget::setGeometry zu setzen, jedoch erhalten Sie keine automatische Platzierung, wenn das fokussierte Widget seine Größe oder Platzierung ändert.

Dokumentation der Mitgliedsfunktionen

QFocusFrame::QFocusFrame(QWidget *parent = nullptr)

Konstruiert einen QFocusFrame.

Der Fokusrahmen überwacht nicht parent auf Aktualisierungen, sondern kann manuell oder mit QFocusFrame::setWidget platziert werden. Ein QFocusFrame setzt das Qt::WA_NoChildEventsForParent -Attribut; als Ergebnis wird das Elternteil kein QEvent::ChildAdded -Ereignis empfangen. Dies ermöglicht es, die Geometrie des QFocusFrame innerhalb eines QSplitter oder eines anderen Widgets zur Überwachung von Kind-Ereignissen manuell zu setzen.

Siehe auch QFocusFrame::setWidget().

[virtual noexcept] QFocusFrame::~QFocusFrame()

Zerstörer.

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

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

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

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

[virtual protected] void QFocusFrame::initStyleOption(QStyleOption *option) const

Initialisieren Sie option mit den Werten aus dieser QFocusFrame. Diese Methode ist nützlich für Unterklassen, wenn sie eine QStyleOption benötigen, aber nicht alle Informationen selbst eingeben wollen.

Siehe auch QStyleOption::initFrom().

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

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

void QFocusFrame::setWidget(QWidget *widget)

QFocusFrame verfolgt Änderungen an widget und passt seine Größe automatisch an. Wenn sich das übergeordnete Widget des überwachten Widgets ändert, wird QFocusFrame dem Widget folgen und sich automatisch um das Widget herum platzieren. Wenn das überwachte Widget gelöscht wird, setzt QFocusFrame es auf Null.

Siehe auch QFocusFrame::widget().

QWidget *QFocusFrame::widget() const

Gibt das aktuell überwachte Widget zur automatischen Größenänderung und Aktualisierung zurück.

Siehe auch QFocusFrame::setWidget().

© 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.