创建窗口的时候,out of memory??

lamputa_lito 2006-09-25 01:28:04
我要创建大约4,5千个控件,都是static或者richedit,button之类的,程序运行过程中,create这些窗口的时候出错,GetLastError返回ERROR_OUTOFMEMORY,即内存不够.但是我在任务管理器上看到我的进程的内存使用量为10M左右.
请大家释疑.如何解决.
...全文
297 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
三条猫 2006-09-28
  • 打赏
  • 举报
回复
你的设计思路有问题,excel的单元应该是靠自己绘制出来的.

当你点击到某一个单元,需要修改的时候,才动态显示一个edit.
至于缩放,合并,添加删除行等等功能,需要很强的逻辑控制.

而不是简单的用几千个控件,这么做windows压根就支持不了.
lamputa_lito 2006-09-28
  • 打赏
  • 举报
回复
确实是不好的设计方法.但是一个小项目米已成炊.程序其实是类似excel一样的界面,如果只是自定义一个控件来实现所有这些功能,这个控件会相当复杂,所以就干脆用了各种控件来做.也就产生了这个问题.
IceKettle 2006-09-25
  • 打赏
  • 举报
回复
不要再在这条路上走下去了,很显然你应该重新设计你的程序,因为就算你把这几千个窗口摆弄得服服帖帖的,你也总有一天会发现这么做很幼稚。没有你这么创建窗口的,你应该优化你的算法,用最少的窗口做最多的事。
vagabond2002 2006-09-25
  • 打赏
  • 举报
回复
实际问题是句柄不够用了吧
mynamelj 2006-09-25
  • 打赏
  • 举报
回复
你知道Excel电子表格有多少个控件组成的?

其实就一个.
mynamelj 2006-09-25
  • 打赏
  • 举报
回复
那客户不是看得眼花潦乱的.
lixiaosan 2006-09-25
  • 打赏
  • 举报
回复
从来没整过那么多控件
lamputa_lito 2006-09-25
  • 打赏
  • 举报
回复
几千个不多吧.
chenyang80425 2006-09-25
  • 打赏
  • 举报
回复
一次性不能动态创建这么多.
思危 2006-09-25
  • 打赏
  • 举报
回复
估计和操作系统有关系, 支持创建的窗口数目有些限制.

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧