读书人

点击A窗口的button1按纽打开B窗口在

发布时间: 2012-03-06 20:47:55 作者: rapoo

点击A窗口的button1按纽打开B窗口,在B窗口中输入完资料后点“保存”,但B窗口有时能自动关闭,有时却又不能,为什么?
如:
点击A窗口的一个button按纽:
procedure Tmonimain.lblW_E44FClick(Sender: TObject);
begin
screen.Cursor:=crHourGlass;
lblW_E44F.Enabled:=false;

//省略一部分代码

setrateprice.Showmodal;
screen.Cursor:=crdefault;
lblW_E44F.Enabled:=true;

end;

以下是点击B窗口的“确定保存”按纽:
procedure Tsetrateprice.Tsbn_101Click(Sender: TObject);
begin
screen.Cursor:=crHourGlass;
Tsbn_101.Enabled:=false;

//中间这段是对oracle数据库进行的一些读写操作,比较耗时,大约要10秒。

screen.Cursor:=crdefault;
Tsbn_101.Enabled:=true;

setrateprice.hide;
setrateprice.close;

end;

我的流程是:

点击A窗口的button1按纽打开B窗口,在B窗口中输入完资料后点“保存”,然后将保存成功或失败的信息显示在A窗口的memo1上面,再自动关闭B窗口。

但现在的问题是:B窗口有时能自动关闭,有时却又不能,为什么?
请各位大虾指点!对于这种流程的设计大家通常是如何处理的?

先谢了。




[解决办法]
ModalResult:= mrOk
[解决办法]
form2的close里加上这句
Action:=cafree
[解决办法]
procedure Tsetrateprice.Tsbn_101Click(Sender: TObject);
begin
screen.Cursor:=crHourGlass;
Tsbn_101.Enabled:=false;

//中间这段是对oracle数据库进行的一些读写操作,比较耗时,大约要10秒。

screen.Cursor:=crdefault;
Tsbn_101.Enabled:=true;
Close; //确保程序执行到这一句。
end;

读书人网 >.NET

热点推荐