DELPHI 调用窗体问题!急

FORM1调用FORM2一点击就弹出内存错误,找了好久没找到解决方法unitUnit1;interfaceuses....,unit2;//调用子窗体单元type...p... FORM1 调用FORM2一点击就弹出内存错误,找了好久没找到解决方法

unit Unit1;
interface

uses

....,unit2; //调用子窗体单元

type

...
procedure btn1Click(Sender: TObject);

var

Form1: TForm1;

implementation

procedure TForm1.btn1Click(Sender: TObject); //调用过程

begin
Form2:=TForm2.create(self);
Form2.Show;
end;

unit Unit2;

....

implementation
uses
Unit1;

....

程序FORM1执行后,点击BTN1,出现内存错误

另外
展开
 我来答
renzhumin2
2010-06-22 · TA获得超过163个赞
知道小有建树答主
回答量:173
采纳率:0%
帮助的人:273万
展开全部
wsong1103和hejinxiang2006回答的并没有实际意义。uses过了,本身就是引用了定义,这和如何调用部分并没有关系。应该是在FORM2的创建过程中有错。
检查一下procedure TForm2.FormCreate(Sender: TObject)过程,设置一个断点,应该是这过程里面的代码导致的错误。
达人国王
2010-06-23 · TA获得超过168个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:180万
展开全部
如果是在窗体设计器中设计好的窗体,

请去掉这句画蛇添足

Form2:=TForm2.create(self);

即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wsong1103
2010-06-22 · 超过10用户采纳过TA的回答
知道答主
回答量:20
采纳率:0%
帮助的人:24.3万
展开全部
procedure TForm1.btn1Click(Sender: TObject); //调用过程

begin
Form2:=TForm2.create(self);
Form2.Show;
end;
改为
procedure TForm1.btn1Click(Sender: TObject); //调用过程
var
Form2: TForm2;
begin
try
Form2:=TForm2.create(self);
Form2.Show;
finally
Form2.free;
end;
end;
你要先申明一个窗体对象,才能调用该对象的方法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hejinxiang2006
2010-06-22 · TA获得超过133个赞
知道答主
回答量:68
采纳率:0%
帮助的人:47.7万
展开全部
TForm1.btn1Click(Sender: TObject); 中的Form2.Show;改成ShowModal试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式