Qt窗体拖拽的实现方法
一,让窗体响应Drop事件
1,设置属性
setAcceptDrops(true);
2,重写相关事件
2.1,.h增加:
protected:
void dragEnterEvent(QDragEnterEvent *event);
void dropEvent(QDropEvent *event);
2.2,.cpp增加:
//此事件函数过滤掉了所有非"myDropTestType"类型的事件,及所有拖拽事件中只要不是"myDropTestType"类型的将被全部过滤掉
void Widget::dragEnterEvent(QDragEnterEvent *event)
{
if (event->mimeData()->hasFormat("myDropTestType"))
{
event->acceptProposedAction();
}
}
//此事件函数接收Drop事件并获取"myDropTestType"类型事件传递的数据
void Widget::dropEvent(QDropEvent *event)
{
QByteA

本文介绍了在Qt中实现窗体拖拽功能的方法,包括设置窗体接受Drop事件、重写dragEnterEvent和dropEvent,以及如何使Widget可拖动,涉及mousePressEvent事件处理。
最低0.47元/天 解锁文章
1440

被折叠的 条评论
为什么被折叠?



