CListView 刷新问题

来源:百度知道 编辑:UC知道 时间:2024/06/06 18:03:10
我想看到的效果是每次往CListView中加入数据后就能马上显示.
我写的代码大致如下:
CListView cv;
for()
{
//处理
cv.InsertItem(...);
}
但是效果是在循环运行完毕之前都不显示数据,而是最后一次性的显示了所有数据.而我想看到的是一个动态增加的过程.
是不是数据插入的太快,还没来得及绘图呢?
请问如何解决?

哈哈,单独写个添加列表项目的线程不就行了吗?

这样处理试试,希望对你有帮助
for()
{

ListView->Items->BeginUpdate();

//处理

ListView->Items->EndUpdate();
}

CListView cv;
for()
{
//处理
cv.InsertItem(...);
Sleep(1000); //只可改
}
试试看,或结合一楼的看看吧

这样才行
for()
{
//处理
cv.InsertItem(...);

//新加,如果能取得新加的item的rect,绘制效果会更好
cv.RedrawWindow(.....);//控制第三个参数的设置,以让它不要闪烁。
}