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

Вниз

Frame в Главной форме...   Найти похожие ветки 

 
bataniQ   (2008-02-14 12:08) [0]

Всем здрасте...Возникла вот такая проблемкО..
На главной форме использую Frame...Но мне главную форму необходимо убрать при запуске программы...пишу в сурсе:
 Application.ShowMainForm := false;  
 Application.CreateForm(TMainForm, MainForm);
 Application.CreateForm(TAuthForm, AuthForm);
 AuthForm.Show;

И все.......конец....появляется AuthForm, после ее закрытия появляется главная форма (MainForm), но вот фрейма уже на ней нету и при выходе из программы возникает такой exception:
System Error. Code: 1400. Invalid window handle.

Если убрать Application.ShowMainForm := false;  То все работает frame показывается, но .. вместе с главной формой при загрузке проги ... как быть????


 
Сергей М. ©   (2008-02-14 12:16) [1]


> после ее закрытия появляется главная форма (MainForm)


Что, сама по себе выскакивает ?)


 
botaniQ   (2008-02-14 12:17) [2]

Не :) - я ее вызываю ... при нажатии например на кнопочку ОК:

AuthForm.Hide;
MainForm.Show;


 
Сергей М. ©   (2008-02-14 12:23) [3]

Пробуй так:

Application.ShowMainForm := false;  
Application.CreateForm(TMainForm, MainForm);
ShowMessage(IntToStr(Integer(MainForm)));
Application.CreateForm(TAuthForm, AuthForm);
AuthForm.Show;

..

AuthForm.Hide;
Application.CreateForm(TMainForm, MainForm);
MainForm.Show;

Какие сообщения видишь (дословно) ?


 
botaniQ   (2008-02-14 12:27) [4]

момент...щас попробую...


 
botaniQ   (2008-02-14 12:29) [5]

Сообщение:
12132436


 
Palladin ©   (2008-02-14 12:32) [6]


> [5] botaniQ   (14.02.08 12:29)

это понятно, но от тебя вообще то две циферки ждут...


 
Palladin ©   (2008-02-14 12:33) [7]

интересно... это я про что... :)


 
botaniQ   (2008-02-14 12:34) [8]

ааа....какие две циферки??


 
Сергей М. ©   (2008-02-14 12:34) [9]


> Palladin ©   (14.02.08 12:33) [7]


Про то самое)

действительно, предполагалось что цифирки эти будут отличаться)


 
Сергей М. ©   (2008-02-14 12:35) [10]


> botaniQ   (14.02.08 12:34) [8]


Пардон)

Не

AuthForm.Hide;
Application.CreateForm(TMainForm, MainForm);
MainForm.Show;

а

AuthForm.Hide;
ShowMessage(IntToStr(Integer(MainForm)));
MainForm.Show;


 
Palladin ©   (2008-02-14 12:36) [11]


>  [10] Сергей М. ©   (14.02.08 12:35)

в том то и прикол, я твое не дочитал, сам продолжил мысль увидел ответ автора, передернул его, вчитался в твое и решил что что-то не так... :)


 
botaniQ   (2008-02-14 12:37) [12]

12132436 и 12132436

т.е. одно и тоже число :(


 
Palladin ©   (2008-02-14 12:38) [13]

ту же операцию с указателем фрейма сделай...


 
botaniQ   (2008-02-14 12:41) [14]

фрейм:
12181340


 
Palladin ©   (2008-02-14 12:41) [15]

в обоих showmessage ?


 
Сергей М. ©   (2008-02-14 12:42) [16]


> botaniQ   (14.02.08 12:41) [14]


А вторая цифирка ?)


 
Сергей М. ©   (2008-02-14 12:44) [17]


> Palladin ©   (14.02.08 12:41) [15]


Так поступают не батаники, но настоящие партизаны на допросе в гестапе)
Клещами вытягивать приходится)


 
botaniQ   (2008-02-14 12:44) [18]

момент...)


 
botaniQ   (2008-02-14 12:45) [19]

опять абсолютно одинаковые...12181452


 
Palladin ©   (2008-02-14 12:47) [20]

а теперь с Parent"ом фрейма...


 
Palladin ©   (2008-02-14 12:48) [21]

и с его handle заодно...


 
Сергей М. ©   (2008-02-14 12:49) [22]


> опять абсолютно одинаковые...12181452


Ну значит он, фрейм это, просто invisible стал почему-то)


 
botaniQ   (2008-02-14 12:50) [23]

а exception почему возникает ?


 
Сергей М. ©   (2008-02-14 12:53) [24]


> exception почему возникает ?


Ты сначала с фреймом разберись, куда он у тебя пропал, сам по себе, якобы)

Потом исключением займешься. Но скорее всего исключение есть прямое следствие этого таинственного исчезновения)

Какие еще выкрутасы ты там творишь в коде обработчиков событий со своими формами/фреймами - то нам не ведомо) ... Где-то, примерно в 17-й строке, у тебя ошибка)


 
botaniQ   (2008-02-14 14:09) [25]

Я ваще тащЮЮССя....странно, но только при такой записи все работает...
 Application.CreateForm(TAuthForm, AuthForm);
 Application.CreateForm(TMainForm, MainForm);
 AuthForm.Show;
 MainForm.MyReqFramePlace.Parent:=AuthForm;  


Причем Frame появляеся именно на MainForm....
Билеберда какая-та..


 
Palladin ©   (2008-02-14 14:10) [26]

правильно, главной формой то AuthForm стала...


 
Сергей М. ©   (2008-02-14 14:12) [27]


> MainForm.MyReqFramePlace.Parent:=AuthForm


За каким лешим нужна эта строчка ?)


 
botaniQ   (2008-02-14 14:15) [28]

Да она вообще не нужна.....просто ...  ней все работает...но естественно я так программу не оставлю... ) надо другой выход искать :)


 
Сергей М. ©   (2008-02-14 14:17) [29]


> Palladin ©   (14.02.08 14:10) [26]
>
> правильно, главной формой то AuthForm стала...
>


С какого перепугу ?
Главной формой VCL-приложения на всем протяжении его работы была и останется самая первая создаваемая форма, владельцем которой становится объект Application. Ныне и присно и вовеки веков )


 
Palladin ©   (2008-02-14 14:18) [30]

так он ее и создает самой первой...


 
Сергей М. ©   (2008-02-14 14:22) [31]


> он ее и создает самой первой...


Точно)
Глаза не разул сразу на это)



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

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

Наверх




Память: 0.51 MB
Время: 0.039 c
2-1202923180
Kirill
2008-02-13 20:19
2008.03.09
Cursor


2-1202823087
Fanbio
2008-02-12 16:31
2008.03.09
записать 6 байтное число


15-1201857706
Andryk
2008-02-01 12:21
2008.03.09
Кто все эти люди?! :)))))))))))) Сцылка


2-1202655439
Artem
2008-02-10 17:57
2008.03.09
Проблема с TStrings


4-1184658001
Artog
2007-07-17 11:40
2008.03.09
SetupDiGetDeviceInterfaceDetail - ошибка 1784





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский