我正在从c ++更新qml Listview;
在main.cpp;
listeci frmlisteci;
engine.rootContext()->setContextProperty("listeElemanlar", &frmlisteci.listeElemanlar);
在Liste.qml中;
ListView{
id: listeciElemanlar
anchors.fill: parent
model: listeElemanlar
delegate: Text{
text: display
verticalAlignment: Text.AlignBottom
width : parent.width
color: textRengi
font.pointSize: 30
leftPadding: 20
}}
在listeci.h;
public:
QStringListModel listeElemanlar;
private:
QStringList userAyarlari;
在listeci.cpp;
listeci::listeci(QObject *parent) : QObject(parent)
{
// Kullanıcı ayarları elemanları
userAyarlari.append("Kullanıcı ayarı 01");
userAyarlari.append("Kullanıcı ayarı 02");
userAyarlari.append("Kullanıcı ayarı 03");
userAyarlari.append("Kullanıcı ayarı 04");
userAyarlari.append("Kullanıcı ayarı 05");
userAyarlari.append("Kullanıcı ayarı 06");
userAyarlari.append("Kullanıcı ayarı 07");
userAyarlari.append("Kullanıcı ayarı 08");
userAyarlari.append("Kullanıcı ayarı 09");
userAyarlari.append("Kullanıcı ayarı 10");
userAyarlari.append("Kullanıcı ayarı 11");
userAyarlari.append("Kullanıcı ayarı 12");
userAyarlari.append("Kullanıcı ayarı 13");
userAyarlari.append("Kullanıcı ayarı 14");
userAyarlari.append("Kullanıcı ayarı 15");
userAyarlari.append("Kullanıcı ayarı 16");
userAyarlari.append("Kullanıcı ayarı 17");
userAyarlari.append("Kullanıcı ayarı 18");
userAyarlari.append("Kullanıcı ayarı 19");
}
void listeci::listeGuncelle()
{
listeElemanlar.setStringList(userAyarlari);
}
通过这些行,当我通过调用
单击qml一侧的按钮时,可以成功创建列表并在qml Listview上显示frmlisteci.listeGuncelle()
但是当我在挂载后执行此过程时((可以说刷新列表),代码变慢,并在此行上等待:
listeElemanlar.setStringList(userAyarlari);
可能是什么原因?
答案 0 :(得分:0)
我发现问题是由stackview引起的。...
我正在通过stackview.pop在页面之间导航。 我更换了流行音乐,以解决问题。...