delphi ScrollBox中的最大组件数(TScrollBox)

z3yyvxxp  于 2022-11-04  发布在  其他
关注(0)|答案(1)|浏览(279)

我开发了一个程序,使用一个TScrollBox组件来产生一个“铁路布局”,这个路线由许多小数字组成,每个数字代表一段轨道(根据铁路建模的思想)。
我注意到,对于相当小的数字,软件工作没有问题。但进行各种调试测试,已经有3500个二进制文件,它开始以一种异常的方式运行,并与5000个片段的程序崩溃下流!
我想说明的是,这个软件的第一个版本是用“ Delphi 5 Professional”开发的,在“Windows XP Professional”环境下。我认为问题是RAM的量太小(最大3GB),这不允许你分配超过一定数量的块,尽管粗略估计我也许可以分配至少16000块。
我随后尝试修改软件使其适应“ Delphi XE 2”,在“Windows 8. 1 Professional X64”环境下,生成64位代码,但上面描述的问题仍然发生。
在这一点上,我想知道问题是否在于TScrollBox组件的可能限制。TScrollBox上可以放置的组件是否有最大数量?如果有,有什么方法可以克服这个问题吗?

dsf9zpds

dsf9zpds1#

这不是TScrollBox的限制,而是操作系统本身的限制。
窗口管理器施加的一个基本限制是,任何进程都不能创建超过10,000个USER或GDI对象
由于您可能使用的是TWinControl的后代,因此很可能已经达到了该限制。

相关问题