gpt4 book ai didi

c++ - 将照片文件拖放到 QGraphicsView

转载 作者:行者123 更新时间:2023-11-30 02:53:56 24 4
gpt4 key购买 nike

如何让QGraphicsView处理拖放?比如,从某个文件夹中拖出一个图像文件,然后放到 QGraphicsView 中? Windows、QT5.2、C++。

最佳答案

你需要创建一个 QGraphicsScene 的子类(如果你还没有这样做的话)并覆盖它的 dragEnterEvent(QGraphicsSceneDragDropEvent *) 方法来调用它的参数 acceptProposedAction() 如果参数代表一个图像文件你会能够处理——即如果 dragDropEvent->mimeData()->hasUrls() 返回 true,并且 dragDropEvent->mimeData()->urls() 返回的至少一个 QUrls 可用于构造有效的 QPixmap (通过 QPixmap(url[i]->toLocalFile)).

然后您需要重写 dropEvent(QGraphicsSceneDragDropEvent *) 方法来创建一个新的 QGraphicsPixmapItem 对象(使用 QGraphicsSceneDragDropEvent 对象的 mimeData 对象中指定的文件名创建的 QPixmap)并将 QGraphicsPixmapItem 添加到 QGraphicsScene。

关于c++ - 将照片文件拖放到 QGraphicsView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17530160/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com