1

我有用于从 XML 文件保存和检索数据的 C++ 代码。我有一些在 QML 中构建的表单,我想以这样的方式连接,当数据输入到我的 QML 中时,处理是在 C++ 中处理的,并且通过 QML 表单对产品进行搜索,在 C++ 中处理和产品列表项目被交还给 QML 进行显示。

class ProcessRequests : public QObject
{
    Q_OBJECT
    Q_PROPERTY(string username READ username WRITE username)
    Q_PROPERTY(string useremail READ useremail WRITE useremail)
    Q_PROPERTY(string usercomplaint READ usercomplaint WRITE usercomplaint)


    public:

    ProcessRequests()
    {}
    ~ProcessRequests(){}

    Q_INVOKABLE void SubmitComplaint(){
     //TODO: Add Xml code to save the property values to file 

    }

};
4

2 回答 2

2

这个话题比较大,你最好看看文档,他们很清楚,应该还有一些教程。这是一个很好的起点:C++ 中的 QML 绑定

于 2012-02-03T22:35:56.437 回答
2

我认为你的问题是 QML 和 C++ 代码之间的相互通信,你可以用这样的代码来做到这一点:

//Product.cpp
QmlApplicationViewer viewer;

QDeclarativeEngine *engine = viewer.engine();
QDeclarativeContext *context = engine->rootContext();

context->setContextProperty("Product", this);

//Your QML File
Product.YourFunction(args);
于 2012-02-03T22:41:20.190 回答