将项目添加到列表控件时

将项目添加到列表控件时

单击按钮将项目添加到列表控件时,我的应用程序处于冻结状态。我做的很简单:

for (unsigned i = 1; i < 15000;++i)
{
  listcontrol1.InsertItem(i, L"item list");
}


我也尝试使用后台线程,但结果相同。
任何想法如何正确地做到这一点而不阻塞用户界面?

最佳答案

将15k消息倒入消息泵将很慢。

最好在适当的缓存下使用virtual list control。有关工作代码,请参见%Windows SDK Dir%\ Samples \ winui \ controls \ common \ vlistvw中的VListVW Sample

关于c++ - 将项目添加到列表控件时,UI被卡住,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26267581/

10-11 01:03