2016-04-10 5 views
2

QMLリストにクエリの結果を表示します。私は成功を収めて、文字列や数値などの単純な結果を返すことができは、私はこのようなQML UIに私のC++のクラスを接続している

QQmlApplicationEngine engine; 

engine.load(QUrl(QStringLiteral("qrc:/App/main.qml"))); 

qmlRegisterSingletonType<SessionManager>("AppManager", 0, 1, "SessionManager", SessionManager::qmlSingleton); 

、私はに何をしたいです私のデータベースにSELECTの文の結果をリストに表示できるようになりました。

私はC++メソッドから何を返すべきですか、qmlの部分でどのように管理すればいいですか?

答えて

2

あなたにはいくつかの選択肢があります。

  1. あなたはQSqlQueryModelをサブクラス化のようなものを実装することができますあなたがQxORM、QT/C++ ORMを使用してQMLビューに接続することができ、このanswer

  2. であり、彼らは彼らの上に簡単な例をしましたあなただけSqliteをクエリの出力を表示したい場合は、QML/Sqliteをするための簡単なORMだ私が作ったライブラリを使用することができ、あなたがrepositoryからクローンを作成し、それを使用する方法を確認することができます​​

  3. docs

希望します。

+0

私は最初の提案をテストすることにしましたが、ライブラリを含める必要はないので、より魅力的です。リンクされた回答の 'QSqlQueryModel'をサブクラス化した後、値は' engine.rootContext() - > setContextProperty'を使って渡されますが、私は 'qmlRegisterSingletonType'を使っています。モデルをrootContextに設定する必要がありますか? – ealiaj

関連する問題