Форум: "WinAPI";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];
ВнизПоиск окна... Найти похожие ветки
← →
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 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.05.09;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c