Delphi 模式窗体返回值ModalResult的使用方法及注意事项(转)
1、基础知识简介:
ModalResult是指一个模式窗体(form.showmodal)的返回值,一般用于相应窗体上按钮的ModalResult属性;
显示完窗体(关闭)后,会返回此属性预设的值做为返回值。
2、该属性可以使用的参数(默认值是mrNone):该属性可以设置为mrOk 、mrCancel...等等
mrNone 0 None. Used as a default value before the user exits.
mrOk 1 The user exited with OK button.
mrCancel 2 The user exited with the CANCEL button.
mrYes 3 The user exited with the YES button.
mrNo 4 The user exited with the NO button.
mrAbort 5 The user exited with the ABORT button.
mrRetry 6 The user exited with the RETRY button.
mrIgnore 7 The user exited with the IGNORE button.
mrAll 8 The user exited with the ALL button.
mrNoToAll 9 The user exited with the NO TO ALL button.
mrYesToAll 10 The user exited with the YES TO ALL button.
3、使用注意事项:
1、包含ModalResult属性的按钮执行完毕之后,该按钮所在的窗体会自动关闭,不用在OnClick事件中添加诸如Close语句。
2、同时将按钮的ModalResult属性值赋值给窗体的ModalResult属性(注意:任何窗体都有这个属性!)
3、还有就是窗体的ModalResult属性又会自动传递给showmodal方法,作为该方法的返回值。
4、例如:
如果设置form2窗体的一个按钮的ModalResult为mrYes的话,点击此按钮关闭此窗体的时候,会返回mrYes,从而显示OK
1>. 在form1中可以调用:
if Form2.ShowModal = mrok then
ShowMessage('OK');
2> .在form2的按钮btn1中
procedure TForm2.btn1Click(Sender: TObject);
begin
self.ModalResult := mrok;
end;