Spec-Zone.ru › Qt 6.0

Класс QFocusFrame

Виджет QFocusFrame предоставляет рамку фокуса, которая может находиться вне обычной области рисования виджета. Подробнее...

Заголовок: #include <QFocusFrame>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) 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

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

Обычно приложению не нужно создавать собственный QFocusFrame, так как QStyle обрабатывает этот нюанс за вас. Разработчик стиля может использовать QFocusFrame, чтобы иметь область фокуса вне области рисования виджета. Таким образом, не требуется резервировать место для виджета, чтобы получить фокус, но достаточно установить его на QWidget с помощью QFocusFrame::setWidget. Тем не менее, вы можете создать свой собственный QFocusFrame на пользовательском виджете и установить его геометрию вручную с помощью QWidget::setGeometry, однако автоматическое размещение не будет выполняться при изменении размера или расположения виджета с фокусом.

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

QFocusFrame::QFocusFrame(QWidget *parent = nullptr)

Создаёт QFocusFrame.

Рамка фокуса не будет отслеживать обновления parent, а может быть размещена вручную или с помощью QFocusFrame::setWidget. QFocusFrame устанавливает атрибут Qt::WA_NoChildEventsForParent; в результате родитель не получит событие QEvent::ChildAdded. Это позволит вручную задать геометрию QFocusFrame внутри QSplitter или других виджетов, отслеживающих события детей.

См. также QFocusFrame::setWidget().

[virtual] QFocusFrame::~QFocusFrame()

Деструктор.

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

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

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

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

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

Инициализирует option значениями из этого QFocusFrame. Этот метод полезен для подклассов, когда им нужен QStyleOption, но они не хотят заполнять всю информацию сами.

См. также QStyleOption::initFrom().

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

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

void QFocusFrame::setWidget(QWidget *widget)

QFocusFrame будет отслеживать изменения в widget и автоматически изменять свой размер. Если родительский виджет отслеживаемого виджета изменится, QFocusFrame будет следовать за виджетом и автоматически размещать себя вокруг него. Если отслеживаемый виджет будет удалён, QFocusFrame установит его в нулевое значение.

См. также QFocusFrame::widget().

QWidget *QFocusFrame::widget() const

Возвращает текущий отслеживаемый виджет для автоматического изменения размера и обновления.

См. также QFocusFrame::setWidget().

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

Spec-Zone.ru

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