Sur cette page

QDragMoveEvent Class

La classe QDragMoveEvent fournit un événement qui est déclenché lorsqu'une opération de glisser-déposer est en cours. En savoir plus...

En-tête : #include <QDragMoveEvent>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui
Hérite de : QDropEvent
Hérité par :

QDragEnterEvent

Fonctions publiques

QDragMoveEvent(QPointF pos, Qt::DropActions actions, const QMimeData *data, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, QEvent::Type type = DragMove)
void accept(const QRect &rectangle)
void accept()
QRect answerRect() const
void ignore(const QRect &rectangle)
void ignore()

Fonctions protégées

QDragMoveEvent(QDragMoveEvent &&)
QDragMoveEvent &operator=(QDragMoveEvent &&)
QDragMoveEvent &operator=(const QDragMoveEvent &other)

Description détaillée

Un widget recevra des événements de déplacement par glissement de manière répétée tant que le glissement se trouve dans ses limites, s’il accepte les événements ` drop events ` et ` enter events`. Le widget doit examiner l’événement pour déterminer le type d’ data s qu’il fournit, puis appeler la fonction ` accept()` pour accepter le dépôt si cela est approprié.

Le rectangle fourni par la fonction answerRect() peut être utilisé pour limiter les déposes à certaines parties du widget. Par exemple, on peut vérifier si le rectangle recoupe la géométrie d’un certain widget enfant et n’appeler acceptProposedAction() que si c’est le cas.

Notez que cette classe hérite de la plupart de ses fonctionnalités de ` QDropEvent`.

Voir également QDragEnterEvent, QDragLeaveEvent et QDropEvent.

Documentation des fonctions membres

QDragMoveEvent::QDragMoveEvent(QPointF pos, Qt::DropActions actions, const QMimeData *data, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, QEvent::Type type = DragMove)

Crée un événement `QDragMoveEvent` de l'type requis, indiquant que la souris se trouve à la position pos spécifiée au sein d'un widget.

Les états de la souris et du clavier sont spécifiés par buttons et modifiers, et les actions décrivent les types d’opérations de glisser-déposer possibles. Les données de glisser-déposer sont transmises sous forme d’informations encodées au format MIME dans data.

Avertissement : n'essayez pas de créer vous-même un objet `QDragMoveEvent`. Ces objets dépendent de l'état interne de Qt.

[protected delete] QDragMoveEvent::QDragMoveEvent(QDragMoveEvent &&)

Crée par « move » une instance de ` QDragMoveEvent`. Cette fonction est supprimée.

void QDragMoveEvent::accept(const QRect &rectangle)

Identique à la fonction accept(), mais indique également que les déplacements futurs seront acceptés s’ils restent dans les limites de l’ rectangle définie sur le widget. Cela peut améliorer les performances, mais peut également être ignoré par le système sous-jacent.

Si le rectangle est vide, des événements de déplacement par glissement seront envoyés en continu. Cela s’avère utile si la source défile dans le cadre d’un événement de temporisation.

void QDragMoveEvent::accept()

Appelle la fonction ` QDropEvent::accept()`.

Il s'agit d'une fonction surchargée.

QRect QDragMoveEvent::answerRect() const

Renvoie le rectangle du widget dans lequel le dépôt aura lieu s'il est accepté. Vous pouvez utiliser cette information pour limiter les dépôts à certains emplacements du widget.

void QDragMoveEvent::ignore(const QRect &rectangle)

L'opposé de la fonction accept(const QRect&). Les déplacements à l'intérieur de l'rectangle e ne sont pas acceptés et seront ignorés.

void QDragMoveEvent::ignore()

Appelle la fonction ` QDropEvent::ignore()`.

Il s'agit d'une fonction surchargée.

[protected delete] QDragMoveEvent &QDragMoveEvent::operator=(QDragMoveEvent &&)

La fonction « Move-assigns » affecte other à cette instance de QDragMoveEvent. Cette fonction est supprimée.

[noexcept protected default] QDragMoveEvent &QDragMoveEvent::operator=(const QDragMoveEvent &other)

Attribue par copie l'other à cette instance d'QDragMoveEvent.

© 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.