gpt4 book ai didi

qt - QML中qt listView的无限滚动

转载 作者:行者123 更新时间:2023-12-02 00:25:17 27 4
gpt4 key购买 nike

我有一个 listview 对象,它通过 javascript 函数从 Web api 读取数据,并将数据附加到 listmodel。我在下面附上了 ListView 和列表模型。

我想在用户接近或到达 ListView 的最后一个元素时实现一种无限滚动。

我不知道如何检测滚动事件并获取相对滚动位置。

感谢您的帮助。

ListModel {

id: subModel
function getSub(idx){
return (idx >=0 && idx < count) ? get(idx).display_name: "";
}
}

ListView {
clip: true
width: parent.width
height: parent.height - searchButton.height
model: subModel
on
delegate: ListingDelegate{
text: title;
subText: subTitle;
icon: Qt.resolvedUrl(thumbnail)
__iconWidth: units.gu(5)
__iconHeight: units.gu(5)
}
}
}

最佳答案

在 QML 中,每个属性都有相应的更改信号。在您的情况下,您应该监听 ListView 的 YEnd 属性:

ListView {
id: messageList
// Stuff
onAtYEndChanged: {
if (messageList.atYEnd) {
// Loading tail messages...
}
}
}

关于qt - QML中qt listView的无限滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15095748/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com