从QScriptEngine迁移到QJSEngine

时间:2016-07-06 12:34:15

标签: c++ qt qtscript qjsengine

我将QScriptEngine代码迁移到QJSEngine。 现在,我有:

class pars
{
public:
  static QScriptValue PrintMainLog(QScriptContext* c, QScriptEngine* e);
};

QScriptValue pars::PrintMainLog(QScriptContext* c, QScriptEngine* e)
{
    //some actions

    return e->globalObject().property("");
}
...
QScriptEngine engine;
...
engine.globalObject().setProperty("PrintLog",engine.newFunction(pars::PrintMainLog));

因此,用户可以使用PrintLog("以及");在我的应用程序中,例如,QLineEdit和函数pars :: PrintMainLog将进行评估。

有没有办法用QJSEngine做到这一点?所以,用户放置相同的PrintLog("什么永远");? 我找到的唯一方法是here,因此用户应该放置一些像Logger.PrintLog("什么永远");其中Logger是一个继承自带有PrintLog槽的QObject的类。

0 个答案:

没有答案