Использование модальной формы
Выполнение модальной формы завершается сразу после вызова метода ShowModal, поэтому память из под нее следует освобождать в вызывающей форме вызовом метода Free.
Например:
Form2:=TForm2.Create(self) ; Form2.ShowModal; Form2.Free;
Результат выполнения модальной формы устанавливается свойством ModalResult командных кнопок. Для того чтобы проверить код ответа (какая кнопка была нажата), следует сравнить значение, возвращаемое методом ShowModal.
Например:
if Form2.ShowModal = mrOk then // Нажата кнопка Ок else Abort; // Завершение приложения
Для закрытия модального диалога не следует вызывать метод Close, достаточно использовать командные кнопки с установленным значением свойства ModalResult.