在使用Duilib开客户端过程中,有些功能是需要操作滚动来配合实现的,例如向List增加一条数据并显示出这条数据、RichEdit增加文字并自动滚动到底部等。
List滚动条操作的方法有:LineDown、PageDown、EndDown等,在没有新增数据的时候,以上方法都能满足需求。新增数据以后,需要立即滚动到底部,这几个方法就无能为力了。这是就需要最原始的SetScrollPos函数来操作了,可是很多朋友List新增数据以后调用这个函数发现并没有作用,那是因为数据添加以后,界面还没有布局完成,新增的数据位置还没有确定。所以添加数据以后,可以通过定时器延时50ms再调用上面的函数。除此之外,还可以直接发送WM_PAINT消息(比较暴力),让UI库重新布局,然后再调用SetScrollPos函数。
好了,需要的小伙伴赶紧试试吧!
duilib开源项目圈QQ群:261675375 \ 261851826
最新代码托管地址:https://github.com/qdtroy/DuiLib_Ultimate
By Troy (QQ:656067418)