|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.12.2009, 13:02 | #1 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 12
|
Как проверить существет ли еще форма в frm:TMyTypeForm?
Есть переменная frm:TMyTypeForm;
Как узнать, что форма на которую ссылается эта переменная,еще существует? assigned(frm)говорит существет, а на самом деле она уже закрыта... и потом когда обращаешься к ней, напрмиер, frm.MyFunction, естественно ругается. |
18.12.2009, 13:07 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Через try..except попытайтесь определить хэндл этой формы.
|
18.12.2009, 13:09 | #3 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
закрыта или уничтожена?
на крайняк try except end есть. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
18.12.2009, 13:15 | #4 |
Пользователь
Регистрация: 12.11.2008
Сообщений: 12
|
Форма уничтожается в другом месте методом destroy не через переменную frm. форма сама когда закрывается уничтожается, а ссылка на нее остается в переменной frm, и нужно проверять прежде чем с ней работать, что существет ли форма или нет.
Кроме try except есть какие еще варианты? может какая процедура наподобии assigned, тольео которая проверяет существует ли объект по этой ссылке? Последний раз редактировалось puga555; 18.12.2009 в 13:22. |
18.12.2009, 13:19 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
кроме как через try except этого всеравно не узнать.(есть ли чтото по ссылке)
вам лучше использовать не destroy а FreeAndNil(Frm); и потом assigned(Frm) вернет что надо. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как Как проверить кнопки мыши без OnMouseDown? | Вадим Буренков | Общие вопросы Delphi | 3 | 22.05.2009 15:08 |
Как Проверить диаппазон | komar73 | Microsoft Office Excel | 3 | 06.02.2009 12:28 |
Как проверить строку? | nikleb | PHP | 6 | 07.07.2008 22:04 |
Как проверить существование потока? | John_chek | Общие вопросы Delphi | 3 | 17.01.2008 15:16 |