首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VC >

vc 中的List Control控件如何实现加载一行,显示一行

2013-04-20 
vc 中的List Control控件怎么实现加载一行,显示一行如题,加载List Control的数据一般都是通过一个循环,一

vc 中的List Control控件怎么实现加载一行,显示一行
如题,加载List Control的数据一般都是通过一个循环,一行一行进行插入,但是只有循环结束后,所有的数据插入完成,控件才能显示出数据来……怎么实现插入一行,控件就显示一行??? list?control
[解决办法]
楼主都问题应该是计算的东西太多了,然后界面卡住了。因为你执行的东西是在界面线程里执行的。
可以新开一个线程执行你的内容,然后发消息给界面,让界面更新
[解决办法]
void do_events()
{
MSG msg;

while (::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE) > 0) {
if (msg.message == WM_QUIT) {
break;
}
GetMessage(&msg, NULL, 0, 0);
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
}

然后在循环中插入一个 do_events();
[解决办法]
在循环里每插入一行,调用UpdateWindow()一次,问题就可以解决了

for (int nItem = 0; nItem < nCounts; nItem++)
{
    插入行;

    UpdateWindow();
}

热点排行