
delphi 我有一个小程序主窗体FORM1 然后单击主窗体内的一个按钮BOTTON1呼出FORM2 这个FORM2是打开一个网页
delphi我有一个小程序主窗体FORM1然后单击主窗体内的一个按钮BOTTON1呼出FORM2这个FORM2是打开一个在线听歌可是我关闭FORM2后歌曲依然在唱,我看网...
delphi 我有一个小程序主窗体FORM1 然后单击主窗体内的一个按钮BOTTON1呼出FORM2 这个FORM2是打开一个在线听歌 可是我关闭FORM2后 歌曲依然在唱,我看网上说要释放窗口,可是怎么释放呢在FORM2的ONCLOSE事件里写freeandnil(form2) 这样关了是真不唱了 可是我再点击BOTTON1 打开这个FORM2的时候就报错了 来个完整点的代码吧 复制的算了就
展开
4个回答
展开全部
内存错误的关键,是在于 没有创建该窗体。
procedure TForm1.Button1Click(Sender: TObject);
begin
//如果Form2被释放了,我们先创建它
if form2=nil then
Application.CreateForm(TForm1, Form1);
//确保Form2存在,然后再show,否则 有内存错误
form2.show;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
//如果Form2被释放了,我们先创建它
if form2=nil then
Application.CreateForm(TForm1, Form1);
//确保Form2存在,然后再show,否则 有内存错误
form2.show;
end;
展开全部
onclose事件里 action:= cafree;
ondestroy事件里 form2:= nil;
ondestroy事件里 form2:= nil;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在工程里移除掉form2,
在button1里面加入
Application.CreatForm(form2,tform2);
form2.show;
在button1里面加入
Application.CreatForm(form2,tform2);
form2.show;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在关闭form2之前先把form2中的网页置为about:blank
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询