n9 用のアプリを作成していますが、データベースに問題があります。アプリに main.cpp またはその他の c++ ファイルを使用していません。qml内からjavascriptを使用してデータベースにデータを作成、削除、追加などします。現在、すべてのエントリを含む文字列を単純に出力しています。すべて正常に動作します。しかし今、データベース内のエントリを ListView として表示したいと考えています。どうやってやるの?
質問する
899 次
1 に答える
1
ListView のモデルを動的に作成できます。次のようなもの:
import QtQuick 2.0
import "main.js" as Main
Rectangle {
id: root
ListView {
width: 180; height: 200
model: Main.createModel(root)
delegate: Text {
text: name + ": " + number
}
}
}
とmain.js
function createModel(parent) {
var s = 'import QtQuick 2.0; ListModel {\n';
var data = ["a", "b"]; // your data from database will be here
for(var x in data) {
var s2 = "ListElement {name: \"" + x+ "\"; number: \"" + x + "\" }\n";
s += s2;
}
s += "}\n";
console.log(s);
return Qt.createQmlObject(s, parent, "mainModel");
}
于 2013-04-01T14:59:04.477 に答える