频道分类

delphi Showmodal与Show的区别

作者:admin 来源: 日期:2020/2/26 22:35:23 人气: 标签:

 
Showmodal与Show的区别  
   1  Show();

  FreeAllSingleDocumentFrm;
  Application.CreateForm(TImpluseTestWellPlate, ImpluseTestWellPlate);
  ImpluseTestWellPlate.Show;

 2  ShowModal()

  Application.CreateForm(TCljs_WzphFrm, Cljs_WzphFrm);
  Cljs_WzphFrm.ShowModal;
  Cljs_WzphFrm.Free;

Showmodal是个函数,Show是个过程
1.Showmodal:
概念:
    当你调用一个窗口用SHOWMODAL时,当这个窗口显示出来后,程序不会继续自己执行,而是根据你对这个窗口的操作来执行,只有关闭了这个窗口后才会执行。
属性:
FormStyle改为fsNormal,visible改为false

2.Show:
概念:
     SHOW不同,当窗口显示后,代码一样往下执行的,即程序会继续执行。
属性:
FormStyle改为fsMDIChild,visible改为True

消息窗体ShowModal()显示时,主窗体是能够处理下一条消息的。使用ShowModal()显示时,其它的窗体
只是不接受用户的操作而已。

另外,Form ShowModal() 时相当于执行了一个 Call ,也就是 ShowModal() 以下的代码在 ShowModal() 出的窗体被关闭前是不会被执行的,但并不影响父窗体的消息循环,这也正是与单一 Show() 的区别!

ShowModal 出来的对话框必须关掉才能处理其他窗体.也就是当前焦点不能转移到其他的窗体上,除非关掉.
Show 出来的对话框则可以将当前焦点转移到其他界面上.

上一篇:delphi 调用SQL和MYSQL存储过程下一篇:没有资料