当前位置:  开发笔记 > 编程语言 > 正文

在MFC中AddString的性能降低

如何解决《在MFC中AddString的性能降低》经验,为你挑选了1个好方法。

我有一个对话框,里面有几个大的组合框(每个可能有几百个).在建造这些建筑物的过程中有明显的延迟(通过剖析确认它们是正确的).

我最初的想法是排序正在扼杀它的性能,但是禁用排序并使用InsertString似乎并没有让事情变得更好.我没想到这似乎是一个过多的项目 - 我还应该做些什么还是在这里考虑?

MFC调用是Win32消息调用的简单包装器,所以我认为没有任何显着的开销.

DUPLICATE 如何尽可能快地将大量字符串加载到MFC组合框控件中?



1> Will Dean..:

您应该在添加时使用CWnd :: SetRedraw,以防止控件在每次添加后更新其所有内部状态.

如果你还没有这样做,那么这样做:

combo.SetRedraw(FALSE);

...  All the adds

combo.SetRedraw(TRUE);
combo.Invalidate();

您还应该考虑使用CComboBox :: InitStorage函数,该函数为组合框预分配内存.

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有