本文整理自网络,侵删。
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》频道 >>