码迷,mamicode.com
首页 > 其他好文 > 详细

[转]ShowModal() = mrOk

时间:2015-04-04 21:05:38      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

if Form1.showmodal = mrok then 这句话什么意思?

   首先,所有的命令按钮(不论是Button还是BitBtn)都有一个属性:ModalResult,该属性可以设置为mrOk、mrCancel...等等,默认值是mrNone(ModalResult是一个整型值,只要你在用ShowModal以后,窗口中只要给它付一个非零的值,窗口会自动关闭,而mrOK的值是2)。

   平时,ModalResult属性没什么用处,但如果命令按钮放置到用showmodal显示(模态显示,一般用于显示对话框)的窗体上时,就大大的有用了。 

  作用体现在: 

  1、当设置命令按钮的ModalResult属性为mrOk、mrCancel...等时,程序运行后,单击该按钮,按钮所在的窗体会自动关闭,不用在OnClick事件中添加诸如Close;语句。 

  2、当设置命令按钮的ModalResult属性为mrOk、mrCancel...等时,程序运行后,单击该按钮,按钮所在的窗体会自动关闭,同时将按钮的ModalResult属性值赋值给窗体的ModalResult属性(注意:任何窗体都有这个属性!) 

  3、自动关闭上述窗体时,窗体的ModalResult属性又会自动传递给showmodal方法,作为该方法的返回值。 所以说,showmodal方法的返回值总是与命令按钮的ModalResult属性相同。

 

   if form1.showmodal = mrok then 如果要通俗化一下,可以写成如下等价的代码:

 var r:TModalResult;
// ...... .......  

r:=form1.showmodal;
 if r=mrOK then
// ... ... 

  很明显,根据showmodal方法的返回值,可以判断用户在对话框中,究竟是点击了OK按钮还是Cancel按钮,从而决定下一步的程序逻辑。

[转]ShowModal() = mrOk

标签:

原文地址:http://www.cnblogs.com/ufindme/p/4392681.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!