QFocusFrame Class

QFocusFrame 위젯은 위젯의 일반 페인트 가능 영역 밖에 있을 수 있는 초점 프레임을 제공합니다. 더 보기...

헤더: #include <QFocusFrame>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
상속합니다: QWidget

공용 함수

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

보호된 함수

virtual void initStyleOption(QStyleOption *option) const

재구현된 보호 함수

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

상세 설명

일반적으로 응용 프로그램에서는 QStyle 에서 이 세부 사항을 처리하므로 자체 QFocusFrame을 만들 필요가 없습니다. 스타일 작성자는 위젯의 페인팅 가능한 지오메트리 외부에 초점 영역을 갖기 위해 선택적으로 QFocusFrame을 사용할 수 있습니다. 이렇게 하면 위젯이 포커스를 갖도록 공간을 예약할 필요 없이 QFocusFrame::setWidget 으로 QWidget 에만 설정할 수 있습니다. 그러나 사용자 정의 위젯에 자체 QFocusFrame을 만들고 QWidget::setGeometry 을 통해 지오메트리를 수동으로 설정하는 것은 합법이지만 포커스가 지정된 위젯의 크기나 위치가 변경되면 자동 배치가 이루어지지 않습니다.

멤버 함수 문서

QFocusFrame::QFocusFrame(QWidget *parent = nullptr)

QFocusFrame을 구축합니다.

포커스 프레임은 업데이트를 위해 parent 을 모니터링하지 않고 수동으로 또는 QFocusFrame::setWidget 을 사용하여 배치할 수 있습니다. QFocusFrame은 Qt::WA_NoChildEventsForParent 속성을 설정하므로 부모는 QEvent::ChildAdded 이벤트를 수신하지 않으므로 QSplitter 또는 다른 자식 이벤트 모니터링 위젯 내부에서 QFocusFrame의 지오메트리를 수동으로 설정할 수 있습니다.

QFocusFrame::setWidget()도 참조하세요 .

[virtual noexcept] QFocusFrame::~QFocusFrame()

파괴자.

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

다시 구현합니다: QWidget::event(QEvent * 이벤트).

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

다시 구현합니다: QObject::eventFilter(QObject *watched, QEvent *event).

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

QFocusFrame 의 값으로 option 을 초기화합니다. 이 메서드는 하위 클래스에 QStyleOption 이 필요하지만 모든 정보를 직접 채우고 싶지 않을 때 유용합니다.

QStyleOption::initFrom()도 참조하세요 .

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

다시 구현합니다: QWidget::paintEvent(QPaintEvent * 이벤트).

void QFocusFrame::setWidget(QWidget *widget)

QFocusFramewidget 의 변경 사항을 추적하고 자동으로 크기를 조정합니다. 모니터링되는 위젯의 부모 위젯이 변경되면 QFocusFrame 이 위젯을 따라 위젯 주위에 자동으로 배치됩니다. 모니터링되는 위젯이 삭제되면 QFocusFrame 은 0으로 설정됩니다.

QFocusFrame::widget()도 참조하세요 .

QWidget *QFocusFrame::widget() const

자동 크기 조정 및 업데이트를 위해 현재 모니터링 중인 위젯을 반환합니다.

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.