QFocusFrame Class
Le widget QFocusFrame fournit un cadre de mise au premier plan pouvant se situer en dehors de la zone d'affichage normale d'un widget. En savoir plus...
| En-tête : | #include <QFocusFrame> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake : | QT += widgets |
| Hérite de : | QWidget |
Fonctions publiques
| QFocusFrame(QWidget *parent = nullptr) | |
| virtual | ~QFocusFrame() |
| void | setWidget(QWidget *widget) |
| QWidget * | widget() const |
Fonctions protégées
| virtual void | initStyleOption(QStyleOption *option) const |
Fonctions protégées réimplémentées
| virtual bool | event(QEvent *e) override |
| virtual bool | eventFilter(QObject *o, QEvent *e) override |
| virtual void | paintEvent(QPaintEvent *) override |
Description détaillée
En règle générale, une application n’aura pas besoin de créer son propre QFocusFrame, car l’ QStyle se charge de ce détail à votre place. Un créateur de styles peut, s’il le souhaite, utiliser un QFocusFrame pour disposer d’une zone de focus en dehors de la géométrie dessinable du widget. De cette manière, il n’est pas nécessaire de réserver de l’espace pour que le widget soit en focus ; il suffit de le définir sur un ` QWidget ` à l’aide de ` QFocusFrame::setWidget`. Il est toutefois possible de créer votre propre `QFocusFrame` sur un widget personnalisé et de définir sa géométrie manuellement via ` QWidget::setGeometry ` ; cependant, vous ne bénéficierez pas du placement automatique lorsque le widget en focus changera de taille ou d’emplacement.
Documentation des fonctions membres
QFocusFrame::QFocusFrame(QWidget *parent = nullptr)
Crée un QFocusFrame.
Le cadre de focus ne surveillera pas les mises à jour de ` parent `, mais pourra être positionné manuellement ou à l’aide de ` QFocusFrame::setWidget`. Un `QFocusFrame` définit l’attribut ` Qt::WA_NoChildEventsForParent ` ; par conséquent, le parent ne recevra pas d’événement ` QEvent::ChildAdded `, ce qui permettra de définir manuellement la géométrie du `QFocusFrame` à l’intérieur d’un ` QSplitter ` ou d’un autre widget enfant surveillant les événements.
Voir également QFocusFrame::setWidget().
[virtual noexcept] QFocusFrame::~QFocusFrame()
Destructeur.
[override virtual protected] bool QFocusFrame::event(QEvent *e)
Réimplémente : QWidget::event(QEvent *event).
[override virtual protected] bool QFocusFrame::eventFilter(QObject *o, QEvent *e)
Réimplémente : QObject::eventFilter(QObject *watched, QEvent *event).
[virtual protected] void QFocusFrame::initStyleOption(QStyleOption *option) const
Initialisez ` option ` avec les valeurs fournies à l'adresse suivante : QFocusFrame. Cette méthode est utile pour les sous-classes qui ont besoin d'un ` QStyleOption`, mais ne souhaitent pas renseigner elles-mêmes toutes les informations.
Voir également QStyleOption::initFrom().
[override virtual protected] void QFocusFrame::paintEvent(QPaintEvent *)
Réimplémente : QWidget::paintEvent(QPaintEvent *event).
void QFocusFrame::setWidget(QWidget *widget)
QFocusFrame suivra les modifications apportées à widget et s'adaptera automatiquement à sa nouvelle taille. Si le parent du widget surveillé change, QFocusFrame suivra le widget et s'affichera automatiquement autour de celui-ci. Si le widget surveillé est supprimé, QFocusFrame sera remis à zéro.
Voir également QFocusFrame::widget().
QWidget *QFocusFrame::widget() const
Renvoie le widget actuellement surveillé pour le redimensionnement et la mise à jour automatiques.
Voir aussi QFocusFrame::setWidget().
© 2026 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.