3

我正在尝试为我的2D 游戏框架(它是 QML 扩展)的一部分创建基准测试,并且在设置 QOBject 的声明性脚本属性时遇到问题。

财产声明:

Q_PROPERTY(QDeclarativeScriptString script READ script WRITE setScript NOTIFY scriptChanged)

我更改脚本的尝试之一是这样的:

ScriptBehavior *behavior = new ScriptBehavior(entity);
QDeclarativeProperty(behavior, "script").write("console.log(1);");

但它不起作用(运行基准测试,但不要向控制台写入任何内容)。

我尝试使用 setProperty 并手动创建 QDeclarativeScriptString 并设置属性,但没有任何效果。

当我尝试创建 QDeclarativeScriptString 时,它失败了:

编码:

ScriptBehavior *behavior = new ScriptBehavior(entity);
QDeclarativeScriptString scriptString;
scriptString.setScript("console.log(1)");
behavior->setScript(scriptString);

输出:

QFATAL : UpdateBenchmark::behavior() Received signal 11
FAIL!  : UpdateBenchmark::behavior() Received a fatal error.
   Loc: [Unknown file(0)]

有什么帮助吗?

谢谢

4

0 回答 0