Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
3-27403
Tommy
2003-09-18 12:58
2003.10.09
Thread i ADO


1-27595
Fasy
2003-09-27 05:56
2003.10.09
размер папки


1-27605
Zew
2003-09-28 20:20
2003.10.09
Чужой Checkbox


1-27427
AlexanderSK
2003-09-30 13:56
2003.10.09
Новый класс от TFrame


3-27324
tudor
2003-09-21 14:36
2003.10.09
dll и main.Использование одного коннекта





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский