![]() |
1
7
根本没有 绝对的 限制。如果在窗体上放置足够的控件,最终会耗尽内存。我制作了一个测试应用程序,将命令按钮加载到控制数组中。我的第一次跑步在大约6900个按钮处出现“内存不足”错误而停止。我关闭了一些其他的应用程序,可以加载近8200个。我对文本框做了同样的操作,得到了不同的结果(之前约7300个,之后约8600个)。不同的控件占用的内存量不同,因此无法指定可以放置在窗体上的控件的确切数量。 |
![]() |
2
3
我们有一个用VB6编写的记录管理系统,并且有一个UI指南,其中规定每个记录都应该有一个与其关联的数据输入窗体(即不能打开其他窗口)。由于这个策略,我们系统中一个更复杂的记录类型现在有了一个窗体,它总共有659个单独的控件。我们遇到了256个命名控件的限制,然后随着时间的推移将许多控件转换为控件数组。最近,在浏览了整个窗体并将剩下的几个独立控件转换为控件数组之后,我们压缩了5到6个新控件的空间。 这是我想打破规则的一次,但这将涉及到相当多的重构,以使用多形式的方法。 在任何情况下,一个窗体上至少可以容纳659个控件,但我始终无法找到真正的绝对限制是什么(我也不确定我是否愿意)。 |