Frm1为主窗体。
在Frm1中调用Frm2.ShowModal。
在Frm2中调用Frm3.ShowModal。
我想问如何在Frm3.ShowModal之前把Frm2关掉?直接Close不行。要等Frm2.ShowModal执行完才能执行。我自己想了一个办法,在Frm3.ShowModal之前让Frm2.Visible为false。
Frm3关闭的时候,把Frm2也关闭。但总觉得这个办法不是很法,所以特地请教大家,
看看有没有别的好办法。。谢谢。
在Frm1中调用Frm2.ShowModal。
在Frm2中调用Frm3.ShowModal。
我想问如何在Frm3.ShowModal之前把Frm2关掉?直接Close不行。要等Frm2.ShowModal执行完才能执行。我自己想了一个办法,在Frm3.ShowModal之前让Frm2.Visible为false。
Frm3关闭的时候,把Frm2也关闭。但总觉得这个办法不是很法,所以特地请教大家,
看看有没有别的好办法。。谢谢。
解决方案 »
- Delphi编译时,pas文件中uses后会增加其它文件
- 大家来抢分 求一关于SUM 的简单SQL语句
- delphi动态数组深度问题???
- merry christmas!散分了
- 请问如何判断edit内的内容是数字还是英文字??
- 某公司的招聘题,请各位老大帮忙.
- 怎样在DBGRID中,把ACCESS的 是/否 字段表示为检取框(既是为对号,否为X号)?
- DBGrid的小问题。
- 决心学习Delphi,请高手指点好的入门书籍和对初学者适用的网站,在线等
- 如何让鼠标的活动范围限于窗体内
- delphi中不能建立interbase数据库的原因
- 【高手请看】在窗体的oncreate事件中,那些事件能造成异常呢?
皮之不存,毛将焉附?
要不你就先隐藏后关闭就是了
begin
Hide;
Close; // 当然,此时并未真正关闭
Form3.ShowModal; // 返回后真正关闭
end;
能否在Frm3.Create()中把Frm2.Close掉呢?没试。
MY_MESSAGE = WM_USER;procedure x_message(var msg: TMessage); message MY_MESSAGE;
procedure TForm2.Button1Click(Sender: TObject);
begin
Close;
PostMessage(Handle, MY_MESSAGE, 0, 0);
end;procedure TForm2.x_message(var msg: TMessage);
begin
form3.ShowModal;
end;
呵呵。。
只不过你把Close语句写在Frm2中了。cllxyuer(蓝天醉在清水塘) 的方法可能不行。
是不是Frm2在处理消息时,可以不用等返回值就可以关闭了呢????
是没有返回值的、