Форум: "Основная";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
ВнизРабота с объектами Найти похожие ветки
← →
Виталька (2004-11-03 08:34) [0]У меня такая проблема:
Есть класс, производный от TForm, ну вообщем моя форма.
Программа запускается и в какой то момент создает объект этого класса.
Как определить программно, существует уже объект данного класса или его еще нет?
← →
begin...end © (2004-11-03 08:44) [1]1. Если форма создаётся с назначением Application в качестве владельца, то можно поискать в Screen.Forms.
2. Можно проверять по неравенству FormVariable <> NIL. При этом, если форма может создаваться и уничтожаться несколько раз, нужно предусмотреть присваивание FormVariable := NIL после уничтожения, или FreeAndNil().
← →
Goffman © (2004-11-03 08:55) [2]Можно объявить переменную-счетчик
При создании экземпляра твоей формы - увеличивать значение счетчика
При уничтожении - уменьшать
← →
Виталька (2004-11-03 09:00) [3]Во точно, забыл что в Delphi "Nil" используется, привык на C++ писать.
Спасибо огромное, все круто стало работать.
← →
KSergey © (2004-11-03 09:41) [4]> [1] begin...end © (03.11.04 08:44)
> 1. Если форма создаётся с назначением Application в качестве
> владельца, то можно поискать в Screen.Forms.
А разве в Screen.Forms она не при любом раскладе попадает? (впрочем, не уверен...)
← →
begin...end © (2004-11-03 11:44) [5]
> [4] KSergey © (03.11.04 09:41)
Да, Вы правы. Извиняюсь.
P.S. Хотя справедливости утверждения 1 это не нарушает ;-)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.036 c