QDragMoveEvent 类

QDragMoveEvent 类提供了一个在拖放动作进行时发送的事件。更多信息...

头文件 #include <QDragMoveEvent>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui
继承自 QDropEvent
继承

QDragEnterEvent

公共函数

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

详细描述

如果小部件接受 放下事件进入事件,则在拖动在其边界内时,小部件将反复接收到拖动移动事件。小部件应检查事件以查看它提供哪种 数据,并在必要时调用 accept() 函数来接受放下。

answerRect() 函数提供的矩形可以用来限制放下到小部件的某些部分。例如,我们可以检查该矩形是否与某个子小部件的几何形状相交,并在这种情况下仅调用 acceptProposedAction()。

注意,此类从 QDropEvent 继承了大部分功能。

另请参阅QDragEnterEventQDragLeaveEventQDropEvent

成员函数文档

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

创建一个所需类型的QDragMoveEvent,表示鼠标位于控件内给定的pos位置。

鼠标和键盘状态由buttonsmodifiers指定,actions描述可能进行的拖放操作类型。拖放数据作为MIME编码信息通过data传递。

警告:请勿自行尝试创建QDragMoveEvent。这些对象依赖于Qt的内部状态。

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

© 2024 The Qt Company Ltd. 此处包含的文档贡献的版权为各自所有者。此处提供的文档根据自由软件基金会发布的GNU自由文档许可版本1.3的条款许可。Qt及其相关标志是The Qt Company Ltd在芬兰和/或其他国家/地区的商标。所有其他商标均为其各自所有者的财产。