1

QML プロジェクトで ListView のデータを公開するために、QSqlQueryModel のサブクラスを使用しました。これらの両方を同時に実行したい:

  1. モデルの pointersetContextProperty()を使用して、モデルを QML に公開します。

  2. モデルを別のスレッドに残しておくと、モデルupdate()関数を呼び出す (データベースで変更されたデータを反映する最後のクエリを実行する) ときに、データベースを再クエリするときにモデルが UI をブロックしません。

出来ますか?そうでない場合、より良い解決策は何ですか?

4

1 に答える 1

0

私の解決策は次のとおりです。サブクラス、そのコンストラクターにポインターをQThread渡し、新しいクラス内で、ビューアーのコンテキスト プロパティを設定します。このように、Qt を使用すると、クエリ モデルへの直接アクセスをポインターで提供できます。QmlApplicationViewerDatabaseQueryThread

于 2012-08-15T01:41:32.923 に答える