Создание и уничтожение форм. Освобождение переменных.

Рейтинг: 0Ответов: 1Опубликовано: 14.10.2014

Добрый день, уважаемые программисты!
По нажатию кнопки создаю форму и отображаю:

newform:=Tnewform.Create(Self);
newform.ShowModal;

Потом закрываю новую форму и снова жму на кнопочку. И так несколько раз. Вопросы:

 1. Выходит, что одна и та же форма создалась несколько раз?
 2. Нужно ли уничтожать форму при её закрытии? Или нужно уничтожать её при закрытии главной формы?
 3. Если я не ошибаюсь, у каждого компонента и переменной есть методы для уничтожения, нужно ли уничтожать всё при закрытии приложения?

Ответы

▲ 3Принят
  1. Да. У Вас будет несколько копий (экземпляров) одной формы
  2. Желательно уничтожать форму тогда, когда она Вам больше не нужна. Но никто не мешает ее переиспользовать.
  3. Все компоненты, которые добавлены на форму, не нужно уничтожать ручками - форма их сама удалит автоматически при своем удалении. Компоненты, которые не привязаны к форме, нужно удалять самостоятельно. Также нужно удалять переменные, которым это требуется (к примеру, TStringList).