0
我在爲我的n9編寫一個應用程序,並且遇到數據庫問題。我沒有爲應用程序使用main.cpp或其他C++文件。我使用qml中的javscript創建,刪除,添加等數據到數據庫。現在,我只是簡單地輸出一個包含所有條目的字符串。一切正常。但是現在我想將數據庫中的條目顯示爲ListView。 我該怎麼做?將QML元素從數據庫加載到ListView中
我在爲我的n9編寫一個應用程序,並且遇到數據庫問題。我沒有爲應用程序使用main.cpp或其他C++文件。我使用qml中的javscript創建,刪除,添加等數據到數據庫。現在,我只是簡單地輸出一個包含所有條目的字符串。一切正常。但是現在我想將數據庫中的條目顯示爲ListView。 我該怎麼做?將QML元素從數據庫加載到ListView中
您可以動態地爲您的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");
}