我是Qt和QML的新手。
我现在正试图从c ++代码中获取一个列表并将列表应用于列表模型,以便listview可以显示更新的列表。
到目前为止,我所做的是构建listview和listmodel以及delegator,如下所示:
Rectangle {
id: container
width: 500; height: 400
function getModel()
{
return environmentModel
}
ListModel {
id: environmentModel
ListElement {
hs: 2
tp: 2.45
dp: 2.45
}
ListElement {
hs: 1
tp: 2.45
dp: 2.45
}
ListElement {
hs: 3
tp: 2.45
dp: 2.45
}
}
Component {
id: environmentDelegate
Row {
spacing: 10
Text { width: 100; text: hs }
Text { width: 100; text: tp }
Text { width: 100; text: dp }
}
}
Component {
id: environmentHeader
Row {
spacing: 10
Text { width: 100; text: "Hs" }
Text { width: 100; text: "Tp" }
Text { width: 100; text: "Dp" }
}
}
// The delegate for each location in the model:
ListView {
anchors.fill: parent
model: environmentModel
delegate: environmentDelegate
header: environmentHeader
}
}
我想做的是
1)我有一个c ++函数,它返回一个向量,比如说
class Record {
int date;
char time;
float hs;
float tp;
float dp;
};
std::vector<Record> getRecords();
2)如果单击一个按钮,则从上面的函数getRecords()返回的列表将附加到listmodel。我研究了一点Qt和QML,信号和插槽,但仍然没有任何想法。如果有人做出榜样会很棒。