GDI对象或用户对象?

时间:2012-06-06 02:19:04

标签: delphi windows-7 delphi-2009 popupmenu

我有一个允许用户打开多个窗口/模块的应用程序。每个模块都有自己的弹出菜单,其中一些是在创建表单时在运行时创建的,一些设计时间我在每个模块中都有很多,有些在我右键单击表单时使用,有些用于工具按钮。

我遇到的问题是我打开了很多窗口,当我右键单击访问弹出菜单时,生成的菜单变得混乱,我的意思是,它没有显示正确的标签。有时它会显示所有"另存为..."或我需要显示的任何其他标签。我想最简单的解释方法是向您展示菜单的屏幕截图

normal menu

incorrect menu

incorrect menu again

这是GDI /用户对象问题吗?如果是这样,我该如何解决?我尝试增加我的GDI并使用对象限制作为测试但仍然遇到此问题。如果我关闭一个或两个窗口,问题就会解决;但是,我不能要求我的用户限制在应用程序中打开的窗口数量。使用Windows任务管理器检查显示我的应用程序在发生此问题时正在使用4,312个用户对象和5,570个GDI对象以及437个句柄。

0 个答案:

没有答案