天天看點

Delphi 關閉程式 Close . Application.Terminate 與 halt 區別

出處 : http://www.delphitop.com/html/chengxu/131.html

當 Close 是一個主窗體時,程式會退出. 

Close 會發生 FormClose 事件, FormCloseQuery 事件

Halt ( 同 C++ Builder 之 exit(0) )會發生 FormDestory 事件, 

Application.Terminate 以上三個事件都不會發生 Application.Terminate 就是程式結束了。整個程式結束運行,系統強行收回系統資源當主視窗關閉時或 WM_QUIT 消息觸發時, Terminate 自動被調用 close,隻是針對窗體。主窗體close以後程式就 Application.Terminate 了。子窗體 close 以後。沒釋放,還可以 Show 出來。也是說主視窗的 Close 方法其實也是調用 Application 的Terminate 來終止程式的 Application.Close 是正常退出,有應用程式主動交還繫統資源另外有一個區別,主視窗的 Close 方法可以觸發OnClose 事件而 Application.Terminate 並不會觸發該事件.

繼續閱讀