QEventLa classe QEvent est la classe de base de toutes les classes événementielles. Les objets événementiels contiennent des paramètres événementiels. Plus d'informations... #include <QEvent> Voir la position dans l'arbre des classes. HéritageHérité par QAccessibleEvent, QActionEvent, QChildEvent, QCloseEvent, QCustomEvent, QDragLeaveEvent, QDropEvent, QDynamicPropertyChangeEvent, QFileOpenEvent, QFocusEvent, QGestureEvent, QGraphicsSceneEvent, QHelpEvent, QHideEvent, QHoverEvent, QIconDragEvent, QInputEvent, QInputMethodEvent, QMoveEvent, QPaintEvent, QResizeEvent, QShortcutEvent, QShowEvent, QStatusTipEvent, QTimerEvent, QWhatsThisClickedEvent et QWindowStateChangeEvent. Description détailléeLa classe QEvent est la classe de base de toutes les classes événementielles. Les objets événementiels contiennent des paramètres événementiels. La boucle événementielle principale de Qt (QCoreApplication::exec()) récupère les événements du système de fenêtrage natif à partir de la file événementielle, les traduit en QEvent et les envoie aux QObject. En général, les événements proviennent du système de fenêtrage sous-jacent (spontaneous() retourne true), mais il est aussi possible d'envoyer manuellement les événements à l'aide de QCoreApplication::sendEvent() et de QCoreApplication::postEvent() (spontaneous() retourne false). Les QObjects reçoivent des événements en ayant leur fonction QObject::event() appelée. La fonction peut être réimplémentée dans des sous-classes pour personnaliser la gestion événementielle et ajouter d'autre types événementiels ; QWidget::event() est un bon exemple. Par défaut, les événements sont envoyés aux gestionnaires événementiels comme QObject::timerEvent() et QWidget::mouseMoveEvent(). QObject::installEventFilter() permet d'intercepter les événements destinés à un objet pour un autre objet. Le QEvent de base contient uniquement un paramètre de type événementiel et un drapeau (flag) d'« acceptation ». Le drapeau d'acceptation s'active avec accept() et se désactive avec ignore(). Il est activé par défaut mais ne comptez pas dessus, car les sous-classes peuvent choisir de le désactiver dans leurs constructeurs. Les sous-classes de QEvent contiennent des paramètres supplémentaires qui décrivent l'événement particulier. Voir aussi QObject::event(), QObject::installEventFilter(), QWidget::event(), QCoreApplication::sendEvent(), QCoreApplication::postEvent() et QCoreApplication::processEvents(). Typeenum QEvent::TypeCe type d'énumération définit les types événementiels valides dans Qt. Les types événementiels et les classes spécialisées pour chaque type sont les suivants :
Les événements utilisateurs devraient avoir des valeurs comprises entre User et MaxUser :
Pour plus de commodité, vous pouvez utiliser la fonction registerEventType() pour enregistrer et réserver le type événementiel personnalisé dans votre application. Cela vous permettra d'éviter de réutiliser accidentellement un type événementiel personnalisé déjà utilisé ailleurs dans votre application. Propriétéaccepted : boolLe drapeau accepted de l'objet événementiel. Le réglage du paramètre accepted indique que le receveur événementiel veut l'événement. Les événements non désirés peuvent se propager au widget parent. Par défaut, isAccepted() est défini à true mais ne vous fiez pas à lui, vu que les sous-classes peuvent choisir de l'infirmer dans leur constructeur. Pour plus de commodité, le drapeau accepted peut également être accepté avec accept() et désactivé avec ignore(). Fonctions d'accèsbool isAccepted () const void setAccepted ( bool accepted ) Fonctions membresQEvent::QEvent ( Type type )Construit un objet événementiel du type type. QEvent::~QEvent () [virtual]Détruit l'événement. S'il a été envoyé, il sera retiré de la liste des événements à poster. void QEvent::accept ()Active le drapeau accepted de l'objet événementiel, l'équivalent d'un appel à setAccepted(true). Activer le paramètre accepted indique que le récepteur de l'événement souhaite le traiter. Les événements non désirés peuvent être propagés au widget parent. Voir aussi ignore(). void QEvent::ignore ()Désactive le drapeau accepted de l?objet événementiel, l?équivalent d'un appel à setAccepted(false). Désactiver le paramètre accepted indique que le récepteur événementiel refuse l'événement. Les événements non désirés peuvent être propagés au widget parent. Voir aussi accept(). int QEvent::registerEventType ( int hint = -1 ) [static]Enregistre et retourne le type de l'événement personnalisé. L'indice hint fourni sera utilisé s'il est disponible, sinon une valeur comprise entre QEvent::User et QEvent::MaxUser qui n'a pas encore été enregistrée sera renvoyée. L'indice est ignoré si sa valeur n'est pas comprise entre QEvent::User et QEvent::MaxUser. Note : cette fonction est thread-safe. Cette fonction a été introduite dans Qt 4.4. bool QEvent::spontaneous () constRetourne true si l'événement provient de l'extérieur de l'application (un événement système), sinon retourne false. La valeur de retour de cette fonction n'est pas définie pour les événements de peinture. Type QEvent::type () constRetourne le type événementiel. RemerciementsMerci à Abdelhafid Hafidi pour la traduction, à Thibaut Cuvelier pour la traduction et la relecture ainsi qu'à Jonathan Courtois et Maxime Gault pour la relecture ! |
Publicité
Best OfActualités les plus luesSemaine
Mois
Année
Le blog Digia au hasardCréer des applications avec un style Metro avec Qt, exemples en QML et C++, un article de Digia Qt traduit par Thibaut CuvelierLe blog Digia est l'endroit privilégié pour la communication sur l'édition commerciale de Qt, où des réponses publiques sont apportées aux questions les plus posées au support. Lire l'article.
CommunautéRessources
Liens utilesContact
Qt dans le magazine |
Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. | Qt 4.7 | |
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD. | ||
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP ! |
Copyright © 2000-2012 - www.developpez.com