Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Как не допустить повторную загрузку формы?   Найти похожие ветки 

 
Plt   (2004-04-14 18:10) [0]

Все формы загружаются из dll-ин. Есть обычные формы и MDI. Как при создании формы сделать проверку, если форма уже создана то ее просто показать, а не создавать заново.


 
TCrash ©   (2004-04-14 21:25) [1]

Недавно пролетал вопрос об одноэкземплярном приложении.
Для каждой формы создаешь свой мьютекс и при вызове формы проверяй на наличие уже открытой формы.
Может быть проблема при аварийном завершении приложения. В этом случае мьютекс может быть не уничтожен


 
Style ©   (2004-04-14 21:56) [2]


> Для каждой формы создаешь свой мьютекс и при вызове формы
> проверяй на наличие уже открытой формы.


Супер!!! :)))


 
Fay ©   (2004-04-14 22:02) [3]

Ещё можно для каждой формы (так это назовём) создавать сокет слушающий свой порт. 8)


 
panov ©   (2004-04-14 22:03) [4]

Ладно прикалываться-то...
Для каждой формы есть указатель типа TForm.
Достаточно проверять его на nil, при уничтожении формы - обнулять соответственно.


 
Style ©   (2004-04-14 22:19) [5]


> Достаточно проверять его на nil,


Не знаю, что лучше в этом случае использовать глобальную переменную или всеже избежать ее использование

Я обычно завожу в public главной формы
булевый флаг IsFrmTestCreated: boolean;
и при Create устанавливаю его в true, а на FrmTest.OnDestroy
сбрасываю его в false обращаясь к нему через Owner.


 
Fay ©   (2004-04-14 22:25) [6]

2Style ©   (14.04.04 22:19) [5]
Защита от себя? Клёво.


 
Style ©   (2004-04-14 22:31) [7]


> Защита от себя? Клёво.


иногда действительно лучше ограничить свои возможности :) Или потом без пива не разобраться...



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
9-1069199412
Dmitrich
2003-11-19 02:50
2004.05.02
DelphiX- Спрайты


3-1080815585
LittleSpo
2004-04-01 14:33
2004.05.02
MIDAS + ADO где можно найти доки ?


1-1081957108
/\_A_M_E_P
2004-04-14 19:38
2004.05.02
Как запихнуть в трей иконку програмы?


14-1081411789
uny
2004-04-08 12:09
2004.05.02
какой клиент выбрать?


8-1075150366
Builder
2004-01-26 23:52
2004.05.02
Эффект