gpt4 book ai didi

c++ - QVariant 转换为 QPainterPath

转载 作者:行者123 更新时间:2023-11-28 03:02:12 29 4
gpt4 key购买 nike

我正在制作的迷你游戏现在遇到了问题。问题如下:我为我的游戏创建了一个关卡编辑器,因此我必须创建自己的委托(delegate)和模型,当我尝试通过 shapeeditor(更有可能创建一个 painterpath )进行编辑时会出现问题。然后我通过数据返回 painterpath 但是当我尝试用我的委托(delegate)绘制它时,qt 告诉我以下错误:

/usr/include/qt4/QtCore/qmetatype.h:169: error: 'qt_metatype_id' is not a member of 'QMetaTypeId<QPainterPath>'

我不太确定为什么会出现此错误。有关项目源代码的信息,如果需要我可以提供。但我只是认为从 qvariant 到 qpainterpath 的转换是不可能的。他们必须是一种方法来做到这一点。

注意:我尝试了以下操作

QVariant var = index.model()->data(index, Qt::DecorationRole);
QPainterPath path = var.value<QPainterPath>(); // The error occurs here, this is line 169

但这没有用 >.< 如果你能帮助我,谢谢可能的解决方案,是否有从 painterpath 创建一个像素图?我可以简单地返回像素图而不是画家路径。

最佳答案

看起来您需要将 Q_DECLARE_METATYPE 宏与 QPainterPath 一起使用

喜欢

Q_DECLARE_METATYPE (QPainterPath)

Here是相同的文档。

关于c++ - QVariant 转换为 QPainterPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20483890/

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