Spec-Zone.ru › Qt

Класс 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.2/qfocusframe.html

Spec-Zone.ru

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