Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проверка существования формы / 7 сообщений из 7, страница 1 из 1
27.09.2002, 14:39
    #32053694
vislex
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Подскажите пожалуйста ответ на следующий вопрос.

В программе динамически создаю дочерние формы MDIChildForm`s.

NameForm:=TNameForm.Create(Self);

Как программно проверить создана дочерняя форма или нет? Свойство VISIBLE не помогает.
Спасибо.
...
Рейтинг: 0 / 0
27.09.2002, 15:12
    #32053713
_svs
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Прверь NameForm, он не должен быть пустым
...
Рейтинг: 0 / 0
02.10.2002, 11:52
    #32054761
FreePainter
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Я вот как проверяю наличие формы на экране:

function TMainForm.CheckForm(SCapt: String): Boolean;
var Ind_Child: Integer;
begin
CheckForm := False;
for Ind_Child := MDIChildCount - 1 downto 0 do
if MDIChildren[Ind_Child].Caption = SCapt then begin
MDIChildren[Ind_Child].BringToFront;
CheckForm := True;
end;
end;

т.е. если форма найдена она вываливается на верх, ну и если форма найдена (CheckForm = True) я повторно ее не создаю. Хотя создание формы можно возложить на процедуру, т.е. проверить наличие формы на экране, и если она есть, то просто ее поднять на верх, а новую не создавать, или же если нет, то создать ее в процедуре.
...
Рейтинг: 0 / 0
02.10.2002, 12:00
    #32054769
Cherruty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
При создании формы запоминай ee Handle в переменную, при ее закрытии обнуляй его и никие проверки на ниличие существование формы не проблема
...
Рейтинг: 0 / 0
15.10.2002, 03:20
    #32058202
just4fun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Делай так!
if Assigned(ManagersForm) then
begin
PostMessage(ClientHandle, WM_MDIACTIVATE, ManagersForm.Handle,
0);
end
else
begin
ManagersForm := TManagersForm.Create(Self);
end;
...
Рейтинг: 0 / 0
16.03.2003, 13:26
    #32120742
KeepeR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Да но при сохранении Handle нужно использовать глобальные переменные.
B и чем больше этих форм тем больше переменных.
А так запустил функцию (Которую написал FreePainter), задал имя формы (я использовал не Caption а Name) и получил результат.
...
Рейтинг: 0 / 0
17.03.2003, 11:27
    #32120969
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка существования формы
Как минимум в двух топиках было про это, поищи сначала, чем спрашивать
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проверка существования формы / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]