Delphi中MDI子窗口的關閉方式默認為縮小而不是關閉,所以當你單擊子窗口右上角的關閉按鈕時會發覺該子窗口只是最小化,而不是你預期的那樣被關閉。解決辦法是在子窗口的OnClose事件處理過程中加入如下代碼,示例:
p
rocedure ChildForm.OnClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
Delphi為一個Form的關閉行為指定了四種方式,分別是:
caNone 禁止Form被關閉 caHide Form不被關閉,但是被隱藏。被隱藏的Form仍然可以被程序訪問。 caFree Form被關閉,並且釋放其占用的資源。 caMinimize Form被最小化而不是被關閉,這是MDI子窗口的默認關閉行為。