Spec-Zone.ru › Qt 5.14

Класс QDragMoveEvent

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

Заголовок: #include <QDragMoveEvent>
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-5.14/qdragmoveevent.html

Spec-Zone.ru

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