Delphi のオンライン ヘルプには、メモリからフォームを削除するには Release を使用する必要があると記載されています。ただし、モーダルフォームの多くの例で、次の構成を見てきました。
MyForm := TMyForm.Create(nil);
try
MyForm.ShowModal;
finally
MyForm.Free;
end;
Free はモーダル フォームを破棄する安全な方法ですか? ShowModal のソースでわかるように、ModalResult が 0 でなくなるまで Application.HandleMessage が呼び出されます。これが、Free が保留中の Windows メッセージに干渉できない理由ですか?