您的位置:首页 > 财经 > 金融 > 哪里有培训网页设计_网络专题策划模板_tool站长工具_网络营销ppt模板

哪里有培训网页设计_网络专题策划模板_tool站长工具_网络营销ppt模板

2024/11/18 11:49:39 来源:https://blog.csdn.net/Sy_Faker/article/details/142390820  浏览:    关键词:哪里有培训网页设计_网络专题策划模板_tool站长工具_网络营销ppt模板
哪里有培训网页设计_网络专题策划模板_tool站长工具_网络营销ppt模板

在使用QT想实现拖拽功能的时候,发现了dropEvent没有调用运行,遂查找原因:
首先是网上都说要在dragEnterEvent里面使用event->accept();
但我这边在出现问题之前就已经这样做了:

void CanvasView::dragEnterEvent(QDragEnterEvent *event) {qDebug() << "Drag enter event received";  // 确认事件是否被触发if (event->mimeData()->hasFormat("application/x-moduleitem")) {event->acceptProposedAction();  // 接受拖拽} else {event->ignore();  // 不支持的 MIME 类型}
}

在这之后我看到一篇博客中有问题答案:
博客传送门
在博客中第五条说明了,如果使用的类是QGraphicsView,需要重写一下dragMoveEvent,也就是:

//.h:
void dragMoveEvent(QDragMoveEvent *event) override;
//.cpp:
void CanvasView::dragMoveEvent(QDragMoveEvent *event) {event->accept();  // 接受拖拽事件
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com