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

Вниз

Parent у главной формы   Найти похожие ветки 

 
Chlavik ©   (2003-09-26 16:55) [0]

Почему у всех форм Parent это TApplication а вот у главной нет ...??
почему то функция GetParent не находит parent у главной формы...


 
KSergey ©   (2003-09-26 16:57) [1]

Она его находит, но это - DeskTop
А у остальных - точно TApplication?


 
don-do   (2003-09-26 16:59) [2]

Вообще-то Parent не должен здесь применяться, это относиться лишь к TControl, которые на чем то должны лежать.


 
Юрий Федоров ©   (2003-09-26 17:01) [3]

Не может быть
Parent: TWinControl, TApplication не является TWinControl"ом


 
Chlavik ©   (2003-09-26 17:16) [4]

У меня вот так
procedure TfmMain.About2Click(Sender: TObject);
var h:Thandle;
var fmAbout: TfmAbout;
s:array [0..20] of Char; // Имя проги (Application Title у меня 20 символов + нулевой
begin
h:=FindWindow("TfmAbout",nil);
While h<>0 do // не хочется что бы оно нашло окно такого же класа у другой проги
begin
GetWindowText(GetParent(h),s,21);
if s=AppName then begin ShowWindow(h,SW_SHOWNA); exit;end;
h:=FindWindowEx(0,h,"TfmAbout",nil);
end;
Application.CreateForm(TfmAbout, fmAbout);
fmAbout.ShowModal;
fmAbout.Free;
end;


Так вот это код пашет!!!!!! просто у меня можно вызвать About через PopupMenu иконки трэя. А потом когда разварачиваеш прога то получается бред: старое окно About остаётся как бы не в модальным и создаётся новый модальный About ... И вот эту проблему я решаю так, если мона проще то подскажите, но это не важною... Гланое что почемуто у окна About находит а у главной нет.. Если Вместо GetWindowText написать GetClassName то в результе будет Tapplcation а вот для главного окна такой код не работает ...


 
Юрий Федоров ©   (2003-09-26 17:20) [5]

можно и проще... ))))(наворотил ты тут...)
достаточно использовать глоб. переменную fmAbout,
после разрушения присваивать nil, перед созданием (показом) проверять на nil


 
Chlavik ©   (2003-09-26 19:13) [6]

Ok

Но всё равно на своей первоначальный вопрос не получил ответ....


 
Chlavik ©   (2003-09-26 19:32) [7]

Или как бы сделать что бы он Application был парент у главной формы... Только что бы окно потом показывалось :)


 
Anatoly Podgoretsky ©   (2003-09-26 19:44) [8]

Ну тебе уже сказали, что Application не может быть парентом ни у одной формы.


 
Chlavik ©   (2003-09-27 02:01) [9]

Ну я верю тогда как обьснить работающий мой код, почему так???


 
Chlavik ©   (2003-09-27 02:05) [10]

А лучше скачайте http://www.greatis.com/wdsetup.exe (Advanced Windows Analyser) и посмотрите что она выдаёт!!!! в закладке Parents. Кстати полезная прога, кто не видел.



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

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

Наверх




Память: 0.49 MB
Время: 0.02 c
14-27688
Adder
2003-09-21 21:44
2003.10.09
Чего хотят флеймеры? О Боже! Чего же они хотят?


14-27701
Layner
2003-09-19 11:45
2003.10.09
Кредитка по минимуму. Или кто чем пользуется.


1-27597
Кен
2003-09-29 07:20
2003.10.09
Как сделать, чтобы через определённый промежуток времени,


1-27542
Viktor Kushnir
2003-09-28 16:39
2003.10.09
Размер надписи.


3-27400
niko4543
2003-09-18 09:43
2003.10.09
Добавление динамически нового поля