我在主窗体中的一个按钮中创建了一窗体:代码如下:
application.ProcessMessages;
Form_shjqchq:=TForm_shjqchq.Create(self);
Form_shjqchq.ShowModal;
Form_shjqchq.Free;被创建的窗体在执行完一段代码后自动关闭。代码如下:
procedure TForm_shjqchq.FormActivate(Sender: TObject);
begin
data_clear;(我定义的一个函数,执行完它,这个窗体就要关闭,但是现在它关闭不了。)
self.Close;
end;问题是现在self.close 执行后,新创建的窗体还在,没有被关闭。请问大家这是什么问题?
赶快帮帮我吧!
application.ProcessMessages;
Form_shjqchq:=TForm_shjqchq.Create(self);
Form_shjqchq.ShowModal;
Form_shjqchq.Free;被创建的窗体在执行完一段代码后自动关闭。代码如下:
procedure TForm_shjqchq.FormActivate(Sender: TObject);
begin
data_clear;(我定义的一个函数,执行完它,这个窗体就要关闭,但是现在它关闭不了。)
self.Close;
end;问题是现在self.close 执行后,新创建的窗体还在,没有被关闭。请问大家这是什么问题?
赶快帮帮我吧!
如果是Show,需要调用Close方法,处理Close事件
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
如果是ShowModal,把Form的ModalResult赋值为mrOK即可。
不起作用啊?
怎么办?
不起作用啊?
怎么办?
我是用的showmodal显示窗体的
在被显示的窗体的FormActivate事件中添加了如下的代码。
data_clear;(一个自定义函数)
//bitbtn1.OnClick(nil);
self.ModalResult:=mrOk; 想通过你给我的这句关闭该窗体,但是,没有关闭啊
//self.Close;
用了一个progressbar 显示进度,当progressbar.poisition到达max的时候自动关闭该窗体的。
但是现在问题是关不了!