C++Build动态框架问题?

ljwwjh 2003-09-12 04:25:36
程序中用框架动态生成控件,框架内含有大量的控件和菜单有点类试于窗口;程序
使用中动态生成十个框架控件后,系统报内存出错!
但是程序不想限制用户使用框架个数,请问该怎么解决?
...全文
33 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ljwwjh 2003-09-18
  • 打赏
  • 举报
回复
up
crii 2003-09-16
  • 打赏
  • 举报
回复
查询本机内存信息

大家知道,合理地分配使用内存,可以使计算机达到一个很高的运行效率;如何才能合
理地使用分配内存呢?只要做到随时了解当前内存的容量,才能为准确合理分配内存提
供可能。为此,笔者就在这里使用C++ Builder来帮助大家,准确获取计算机中的内存信
息,下面是程序的部分原代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
MEMORYSTATUS MemInfo;
MemInfo.dwLength =sizeof(MEMORYSTATUS);
GlobalMemoryStatus(&MemInfo); //GlobalMemoryStatus是获取内存的主要函数
IntToStr(MemInfo.dwMemoryLoad); //显示当前使用的内存
IntToStr(MemInfo.dwTotalPhys); //显示所有的物理内存
IntToStr(MemInfo.dwAvailPhys); //显示未使用的物理内存
IntToStr(MemInfo.dwTotalVirtual); //显示虚拟内存空间大小
IntToStr(MemInfo.dwAvailVirtual); //显示未使用的虚拟内存空间大小
}

--

※ 来源:·BBS 水木清华站 smth.org·
GeoPhoenix 2003-09-14
  • 打赏
  • 举报
回复
必须这么多么?加点内存不就结了,内存便宜的很
ljwwjh 2003-09-14
  • 打赏
  • 举报
回复
up
sprewellkobe 2003-09-14
  • 打赏
  • 举报
回复
你把代码帖出来看看吧
ljwwjh 2003-09-14
  • 打赏
  • 举报
回复
现在框架测试如下:
如果将框架放到一个Mdi子窗口中,在win98+128M内存下,建200个带有框架的Mdi窗口都没有问题,但是,如果在一个窗口中建立10个框架控件内存都耗费完,因为建一个控件需用8M内存;
而我的exe文件就是8M(有delphi报表,没有压缩exe);
但是程序要求在一个窗口中动态生成控件,并且动态至少1---30个(根据实际的情况);
请问各位,到底该如何解决问题,感谢!
whsyr 2003-09-14
  • 打赏
  • 举报
回复
To ljwwjh:你的问题我也遇到过!
可能根动态生成框架的方式有关,框架如果在窗口上静态生成控件,内存占用就很小!
supwjhuLoveCjj 2003-09-14
  • 打赏
  • 举报
回复
了解一下,我试试看
ljwwjh 2003-09-12
  • 打赏
  • 举报
回复
是这样的,当有系统内存小时,允许生成的框架少可能到少于10个框架时就有问题,当内存是256M时的机器,框架有几十个都没有问题;
请问该如何各位该如何解决!
wangk 2003-09-12
  • 打赏
  • 举报
回复
在用户申请新框架时,判断一下内存空间,不足则释放内存,或拒绝生成新框架.
我记得系统中的总句柄数目似乎有限制.这样的话,还是拒绝生成新框架比较妥当.
ThinkX 2003-09-12
  • 打赏
  • 举报
回复
你不会用断点和堆栈来查看是哪里出了毛病了吗?
StockViews 2003-09-12
  • 打赏
  • 举报
回复
问题不在于框架本身,而在于你的框架是怎么实现的。
Delphi XE2 正式版的破解程序,有效哦。 Delphi XE2 官方完整 delphicbuilder_xe2_win_dl.iso下载地址: http://altd.embarcadero.com/download/radstudio/xe2/delphicbuilder_xe2_win_dl.iso 文件大小: 2.33G MD5: de8b9f897e2ad678643b64898470b707 Delphi Prism XE2 - ISO 1.28G http://altd.embarcadero.com/download/prism/xe2/prism_xe2_win.iso RadPHP XE2 - ISO 343M http://altd.embarcadero.com/download/radphp/xe2/radphp_xe2_win.iso 建议大家用迅雷下载 ************************************** 英巴卡迪诺发布新版RAD Studio XE2开发工具套件 日前,英巴卡迪诺宣布发布新版RAD Studio XE2软件开发工具套件,新版包含了10多年来最深入全面的特性升级。RAD Studio XE2中包含了新版本的Delphi、C++Builder、Prism和RadPHP。主要特性包括完整的Delphi 64位Windows支持,通过全新的FireMonkey富商业应用平台支持Mac OSX和iOS,以及通过RadPHP XE2支持安卓web和移动应用开发。 对Delphi XE2和C++Builder XE2来说,一个极其重要的新特性就是FireMonkey,业界第一款用于创建商业软件的原生的能全面利用到CPU和GPU计算能力的富应用平台。使用 FireMonkey,Delphi和C++Builder开发人员能开发出视觉绚丽的高清和3D应用程序,并与后台的企业级数据库如Oracle、微软 SQL Server、IBM DB2、Sybase和其他数据库互联互通。FireMonkey应用以原生方式运行在Windows PC和Mac上,可以完全利用到现代GPU的处理能力,以不可置信的细节处理能力和优异的性能表现展现数据和用户界面。FireMonkey还可以使 Delphi XE2用户为移动(iOS)设备创建原生的高清和3D应用程序。 Delphi和C++Builder为应用开发提供原生开发方式,而RadPHP XE2则支持web开发和移动设备应用的开发。使用RadPHP XE2,开发人员可以轻松为移动智能电话和平板电脑创建支持触碰和UI优化的web应用。开发人员可以部署他们的移动Web应用为原生移动应用到苹果公司的iOS应用商店和安卓的应用市场。在他们的移动Web应用中,可以直接访问移动设备的硬件,如相机、GPS和重力感应器。 其他新增特性包括: Delphi XE2 和C++Builder XE2 Delphi XE2包括完整的Windows 64位对FireMonkey、编译器、调试器、RTL 和VCL的支持; dbExpress具有新的对InterBase XE, FireBird 2.5, SQL Anywhere 12 和ODBC的连接能力; 新的DataSnap移动连接器,带有原生的平台组件和示例以创建从移动客户端到Delphi DataSnap服务器的连接,支持安卓(Java), iOS (Objective C), 黑莓(Java) 和Windows Phone 7 (C#); 新增和更新的扩展工具,包括FastReport,用于快速设计和生成报表;Documentation Insight,用于Delphi的源代码文档工具; TeeChart、IBX、InstallAware、IP*Works、Aqtime、FinalBuilder、IntraWeb和Indy 的64位版本。 TeeChart、Indy和FinalBuilder还支持Mac平台; C++Builder XE2中还包含了新的代码审计和QA度量工具; LiveBindings使用户能连接任意类型的信息到任意的FireMonkey用户界面和图形对象上。用户可以绑定实时数据到标准的用户界面控件、高清或3D图形元素上,以创建可视化任意类型数据的崭新方式; RadPHP: 集成式为移动优化的Web开发; 部署应用到Web, iOS, 或安卓; 扩展的Zend框架组件集; Embarcadero Prism: 来自RemObjects的全新的.NET Oxygene编译器; 匿名接口实现; FastReport.net

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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