Spec-Zone.ru › Qt 6.0

Класс QDragMoveEvent

Класс QDragMoveEvent предоставляет событие, которое отправляется во время выполнения действия перетаскивания и перемещения. Подробнее...

Заголовок: #include <QDragMoveEvent>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Наследует: QDropEvent
Наследуется от:

QDragEnterEvent

  • Список всех членов, включая унаследованные

Открытые функции

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

Подробное описание

Виджет будет получать события перетаскивания и перемещения многократно, пока перетаскивание находится в пределах его границ, если он принимает события сбрасывания и события входа. Виджет должен проанализировать событие, чтобы увидеть какой тип данных он предоставляет, и вызвать функцию accept(), чтобы принять сбрасывание, если это уместно.

Прямоугольник, предоставленный функцией answerRect(), может быть использован для ограничения сбрасывания до определенных частей виджета. Например, мы можем проверить, пересекается ли прямоугольник с геометрией определенного дочернего виджета и вызвать acceptProposedAction() только в том случае, если это так.

Обратите внимание, что этот класс наследует большую часть своей функциональности от QDropEvent.

См. также QDragEnterEvent, QDragLeaveEvent и QDropEvent.

Документация по функциям-членам

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

Создаёт QDragMoveEvent требуемого типа, указывающего, что указатель находится в позиции pos внутри виджета.

Состояния мыши и клавиатуры задаются параметрами buttons и modifiers, а actions описывают типы операций перетаскивания и перемещения, которые возможны. Данные перетаскивания передаются в виде MIME-кодированной информации в data.

Предупреждение: Не пытайтесь создавать QDragMoveEvent самостоятельно. Эти объекты полагаются на внутреннее состояние Qt.

[virtual] QDragMoveEvent::~QDragMoveEvent()

Уничтожает событие.

void QDragMoveEvent::accept(const QRect &rectangle)

То же, что и accept(), но также уведомляет о том, что будущие перемещения также будут приемлемыми, если они останутся в пределах заданного прямоугольника rectangle на виджете. Это может повысить производительность, но также может быть проигнорировано базовой системой.

Если прямоугольник пустой, события перетаскивания и перемещения будут отправляться непрерывно. Это полезно, если источник прокручивается в событии таймера.

void QDragMoveEvent::accept()

Это перегруженная функция.

Вызывает QDropEvent::accept().

QRect QDragMoveEvent::answerRect() const

Возвращает прямоугольник в виджете, где произойдёт сбрасывание, если он принят. Вы можете использовать эту информацию, чтобы ограничить сбрасывание определёнными местами на виджете.

void QDragMoveEvent::ignore(const QRect &rectangle)

Обратное функции accept(const QRect&). Перемещения в пределах rectangle не приемлемы и будут проигнорированы.

void QDragMoveEvent::ignore()

Это перегруженная функция.

Вызывает QDropEvent::ignore().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qdragmoveevent.html

Spec-Zone.ru

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