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

Вниз

Поиск окна...   Найти похожие ветки 

 
OlegG   (2002-03-06 16:36) [0]

Здравствуйте, уважаемые мастера!
Подскажите пожалуйста, столкнулся со следующей проблемой: необходимо проверить в моем приложении открыта мне нужная форма или нет для того, чтобы не открывать несколько экземпляров. Для этого я ищу окно: FindWindow(nil, "заголовок окна") и если результат <> 0, то вызываю форму: Form:= TForm.Create(Application); Но дело в том, что если я уже взывал эту форму, а потом ее закрывал по Close(), то FindWindow все равно возвращает результат отличный от 0. Может быть нужно что-то добавить в OnDestroy формы?


 
Виктор Щербаков ©   (2002-03-06 16:38) [1]

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree
end;


 
VuDZ ©   (2002-03-06 17:40) [2]

ShowWindow(hwnd, SW_SHOW) или SW_RESTORE И ваши волосы будут мягкими и шеловистыми.


 
Юрий Зотов ©   (2002-03-06 18:11) [3]

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree // Форма уничтожается при своем закрытии
end

procedure TForm1.FormDestroy(Sender: TObject);
begin
Form1 := nil // Ссылка на форму очищается при ее уничтожении
end;

И теперь создаем так:

if Form1 = nil then Form1 := TForm1.Create(Application);


 
OlegG   (2002-03-07 09:15) [4]

Большое спасибо всем ответившим...



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
14-26258
PVOzerski
2002-04-02 11:38
2002.05.09
Чем занят комп в


4-26314
dssfffffffffffff
2002-03-04 14:53
2002.05.09
Как програмно открыть CD


14-26252
vopros
2002-04-02 11:08
2002.05.09
Как думать и работать при температуре >38 гр тела


3-26004
Limonad
2002-04-13 08:44
2002.05.09
Заменитель BDE для D6 (типа Halcyon), помогите найти!!!!


4-26286
Frogkiller
2002-02-28 23:06
2002.05.09
Как считать значение переменной в другом потоке?