【问题标题】:Q_PROPERTY compilation errorQ_PROPERTY 编译错误
【发布时间】:2017-05-05 12:23:54
【问题描述】:

我的工作环境:Qt 5.8 MSVC2015 64bit,Windows 7 64bit。

我成功地从 java 脚本调用 C++ 方法。 但无法在 JavaScript 中获取 C++ 方法的返回值。 所以我尝试使用Q_PROPERTY来获取JavaScript代码中C++方法的返回值。

class ExportedObject : public QObject
{   
    Q_OBJECT
    Q_PROPERTY(QString myprop MEMBER m_buffer READ GetValue WRITE GetTile)

public:
    Q_INVOKABLE void GetTile(int row, int col, int level);
    Q_INVOKABLE QString GetValue();
    QString m_buffer;

它给了我以下错误:

错误:C2660:'ExportedObject::GetTile':函数不接受 1 个参数

JavaScript 代码:

var image =  window.interface.GetTile( row , col ,level);

知道我在Q_PROPERTY 中缺少什么吗?

他们是在 JavaScript 中获取 C++ 返回值的更好选择吗?

【问题讨论】:

    标签: javascript qt qt5.5 qt5.6


    【解决方案1】:

    我刚刚找到了简单的解决方案,不需要 Q_PROPERTY :

    window.interface.GetTile( row , col ,level, function(returnValue) {
        alert(returnValue);
    });
    

    【讨论】:

      猜你喜欢
      • 2011-09-04
      • 1970-01-01
      相关资源
      最近更新 更多