打开窗体出现Win32 Error的问题,求救!

loyalfox 2002-04-15 07:20:42
比如有个窗体form_sgqy是通过
form_sgqy:=tform_sgqy.create(application);
form_sgqy.showmodal;
打开的,但是可能由于创建过程中,要创建的东西太多,由于采用了notbook,有很多页面,因此也有很多的控件。因此可能占用内存,内存分配不够。因此打开该窗体的时候经常出现以下错误:
Error reading DBComboBox12.Items.string: A Win32 function failed.
或者
Error reading DBComboBox12.Items.string: Win32 Error. Code 87参数错误

DBComboBox12里面的item有数值,当然不只是DBComboBox12,类似的情况也不少!好象只要是item有数值的DBComboBox,不就是这个就是那个!同样在调试程序打开源程序的时候也可能会出现这个问题。
这个问题原来我就碰到过,但是没有引起重视:也可能与我用的破机器有关,win98的操作系统,但是不管什么操作系统,多大内存,我们怎么尽量避免这个问题并且解决这个问题。

我用一个窗体只装载比较其中notbook的一个页面就没有问题
----------------------------------------------
希望大侠们帮忙,分数现在我出最高了,当然回答的好,我会另外加分的,保证不失言!!!



...全文
235 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
loyalfox 2002-04-15
  • 打赏
  • 举报
回复
这种方法我也试验了,也不行!
而且我free以后,还nil了!
两种创建窗体的方式我都试验了

当然我提到的这个问题也不是总是出现的,大约有1/5的概率吧,呵呵
fredfei 2002-04-15
  • 打赏
  • 举报
回复
将程序作如下改动:
在主form中implementation后加入:

uses form_sgqy_unit; //form_sgqy的单元名

将主form中类似form_sgqy:tform_sgqy的声明去掉

form_sgqy:=tform_sgqy.create(application);
form_sgqy.showmodal;
改为

application.createform(tform_sgqy,form_sgqy);
form_sgqy.showmodal;
form_sgqy.free;
fredfei 2002-04-15
  • 打赏
  • 举报
回复
将程序作如下改动:
在主form中implementation后加入:

uses form_sgqy_unit; //form_sgqy的单元名

将主form中类似form_sgqy:tform_sgqy的声明去掉

form_sgqy:=tform_sgqy.create(application);
form_sgqy.showmodal;
改为

application.createform(tform_sgqy,form_sgqy);
form_sgqy.showmodal;
form_sgqy.free;
loyalfox 2002-04-15
  • 打赏
  • 举报
回复
当然还有一些基本操作,比如增加,删除等的代码
loyalfox 2002-04-15
  • 打赏
  • 举报
回复
没有代码,直接在这个窗体上堆砌的控件吗!
fredfei 2002-04-15
  • 打赏
  • 举报
回复
把相关代码贴出来
loyalfox 2002-04-15
  • 打赏
  • 举报
回复
写错了,我是直接在DBComboBox12的属性strings里面写上的啊
fredfei 2002-04-15
  • 打赏
  • 举报
回复
DBComboBox12.Items.strings[index]
是strings而不是string

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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