QML访问不可调用的函数

时间:2013-01-03 08:05:14

标签: c++ qt qml qt-quick qtscript

我需要访问未标记为Q_INVOKABLE或Q_SLOTS的函数。 Qt脚本模块具有名为defaultPrototype的机制。我想知道QML是否可行?

我看到QtDevDays presentatin QtDD12 - QtQuick under the hood - Thomas McGuire 并且在18分钟时Thomas展示了纯粹的QML小部件应用程序。我认为如果不将一些不可调用的函数导出/暴露给脚本环境,你就无法实现它。

QtScript中是否存在像defualtPrototype这样的QML机制?

1 个答案:

答案 0 :(得分:2)

QML使用Qt Script,因此使用默认的原型机制是完全可能的。唯一的问题是获得声明引擎的脚本引擎,因为它们没有明显的API。请查看libkdeclarative中的code,尤其是KDeclarative::initialize(),以获得可行的黑客攻击。

相关问题