Главная страница
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.023 c
6-1078507813
DillerXX
2004-03-05 20:30
2004.05.02
Как мне узнать, что в данный момент узверь подключился к Инету?


11-1054737597
Kirill
2003-06-04 18:39
2004.05.02
Сворачивание программы


4-1078833130
wr
2004-03-09 14:52
2004.05.02
создание окна


11-1065808891
Sagrer
2003-10-10 22:01
2004.05.02
Как мне поменять картинку на BitBtn в runtime ?


6-1078837747
vintik
2004-03-09 16:09
2004.05.02
как получить имя текущего usera