QMouseEventLa classe QMouseEvent comporte des paramètres qui décrivent un évènement de souris. Plus d'informations... #include <QMouseEvent> Voir la position dans l'arbre des classes. HéritageHérite de QInputEvent. Description détailléeLa classe QMouseEvent comporte des paramètres qui décrivent un évènement de souris. Les évènements de souris surviennent lorsqu'un bouton de la souris est enfoncé ou relâché à l'intérieur d'un widget, ou simplement quand le curseur de la souris est déplacé. Les évènements de mouvement de souris surviennent uniquement lorsqu'un bouton de la souris est enfoncé, à moins que le suivit de la souris ait été activé par le biais de QWidget::setMouseTracking(). Qt saisit automatiquement la souris quand un de ses boutons est pressé à l'intérieur d'un widget, qui va continuer de recevoir des évènements de souris jusqu'à ce que le dernier bouton enfoncé de la souris soit relâché. Un évènement de souris contient un drapeau spécial d'admission qui indique si le receveur veut de l'évènement. Vous devez appeler ignore() si l'évènement n'est pas géré par votre widget. Un évènement de souris est propagé dans la chaîne des widgets parents jusqu'à ce que l'un d'entre eux l'accepte avec accept(), ou bien jusqu'à ce qu'un filtre d'évènements le prenne en charge. Note : si un évènement de souris est propagé à un widget pour lequel Qt::WA_NoMousePropagation a été défini, cet évènement ne sera pas propagé dans la chaîne des widgets parents. L'état des modificateurs peut être obtenu par la fonction modifiers(), héritée de QInputEvent. Les fonctions pos(), x() et y() donnent une position de curseur relative au widget recevant l'évènement. Si vous déplacez le widget suite à un évènement de souris, utilisez plutôt la position globale retournée par globalPos() pour éviter un mouvement saccadé. La fonction QWidget::setEnabled() peut être utilisée pour activer ou désactiver les évènements de souris et de clavier pour un widget. Réimplémentez les gestionnaires d'évènements QWidget::mousePressEvent(), QWidget::mouseReleaseEvent(), QWidget::mouseDoubleClickEvent() et QWidget::mouseMoveEvent() de QWidget pour recevoir des évènements de souris dans vos propres widgets. Voir aussi QWidget::setMouseTracking() et QWidget::grabMouse(). Fonctions membresQMouseEvent::QMouseEvent ( Type type, const QPoint & position, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers )Construit un objet d'évènement de souris. Le paramètre type doit être l'un des paramètres suivants : QEvent::MouseButtonPress, QEvent::MouseButtonRelease, QEvent::MouseButtonDblClick ou QEvent::MouseMove. La position est la position du curseur de la souris, relative au widget récepteur. Le bouton button qui entraine l'évènement est donné en tant que valeur depuis l'énumération Qt::MouseButton. Si le type de l'évènement est MouseMove, le bouton approprié pour l'évènement est Qt::NoButton. Les états du clavier de la souris au moment de l'évènement sont spécifiés par les paramètres buttons et modifiers. La globalPos() est initialisée à QCursor::pos(), qui peut ne pas être appropriée. Utilisez l'autre constructeur pour spécifier explicitement la position globale. QMouseEvent::QMouseEvent ( Type type, const QPoint & pos, const QPoint & globalPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers )Construit un objet d'évènement de souris. Le paramètre type doit être QEvent::MouseButtonPress, QEvent::MouseButtonRelease, QEvent::MouseButtonDblClick ou QEvent::MouseMove. La position est la position du curseur de la souris, relative au widget récepteur. La position du curseur dans les coordonnées globales est spécifiée par globalPos. Le bouton button qui entraine l'évènement est donné en tant que valeur depuis l'énumération Qt::MouseButton. Si le type de l'évènement est MouseMove, le bouton approprié pour l'évènement est Qt::NoButton. Le paramètre buttons est l'état de tous les boutons au moment de l'évènement, et modifiers, l'état de tous les modificateurs. Qt::MouseButton QMouseEvent::button () constRetourne le bouton ayant causé l'évènement. Notez que la valeur retournée est toujours Qt::NoButton pour les évènements de mouvement de souris. Voir aussi buttons() et Qt::MouseButton. Qt::MouseButtons QMouseEvent::buttons () constRetourne l'état des boutons au moment où l'évènement a été généré. L'état des boutons est une combinaison de Qt::LeftButton, Qt::RightButton, Qt::MidButton avec l'opérateur OU. Pour les évènements de mouvement de souris, c'est la totalité des boutons qui sont enfoncés. Pour les évènements d'enfoncement de souris et de double-clic, cela inclut le bouton ayant causé l'évènement. Pour les évènements de relâchement de souris, cela exclut le bouton ayant causé l'évènement. Voir aussi button() et Qt::MouseButton. const QPoint & QMouseEvent::globalPos () constRetourne la position globale du curseur au moment de l'évènement. C'est important sous des systèmes de fenêtrage asynchrones comme X11. Chaque fois que vous déplacez vos widgets en réponse à des évènements de souris, globalPos() peut différer grandement de la position actuelle du curseur QCursor::pos(), et de QWidget::mapToGlobal(pos()). Voir aussi globalX() et globalY(). int QMouseEvent::globalX () constRetourne la position globale x du curseur de la souris au moment de l'évènement. Voir aussi globalY() et globalPos(). int QMouseEvent::globalY () constRetourne la position globale y du curseur de la souris au moment de l'évènement. Voir aussi globalX() et globalPos(). const QPoint & QMouseEvent::pos () constRetourne la position du curseur de la souris, relative au widget récepteur de l'évènement. Si, en résultat à l'évènement de souris, vous déplacez le widget, utilisez plutôt la position globale retournée par globalPos() pour éviter un mouvement saccadé. Voir aussi x(), y() et globalPos(). QPointF QMouseEvent::posF () constRetourne la position du curseur de la souris en tant que QPointF, relative au widget récepteur de l'évènement. Si, en résultat à l'évènement de souris, vous déplacez le widget, utilisez plutôt la position globale retournée par globalPos() pour éviter un mouvement saccadé. Cette fonction a été introduite dans Qt 4.4. Voir aussi x(), y(), pos() et globalPos(). int QMouseEvent::x () constRetourne la position x du curseur de la souris, relative au widget récepteur de l'évènement. int QMouseEvent::y () constRetourne la position y du curseur de la souris, relative au widget récepteur de l'évènement. RemerciementsMerci à Louis du Verdier pour la traduction et à Jonathan Courtois ainsi qu'à Claude Leloup pour leur relecture ! |
Publicité
Best OfActualités les plus luesSemaine
Mois
Année
Le Qt Developer Network au hasardCompiler l'add-in Qt de Visual StudioLe Qt Developer Network est un réseau de développeurs Qt anglophone, où ils peuvent partager leur expérience sur le framework. 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