![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Frame в Главной форме...
bataniQ © (2008-02-14 12:08:00)Всем здрасте...Возникла вот такая проблемкО..
На главной форме использую 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 14:22:00) [1]
> он ее и создает самой первой...
Точно)
Глаза не разул сразу на это)
Palladin (2008-02-14 14:18:00) [2]так он ее и создает самой первой...
Сергей М. (2008-02-14 14:17:00) [3]
> Palladin © (14.02.08 14:10) [26]
>
> правильно, главной формой то AuthForm стала...
>
С какого перепугу ?
Главной формой VCL-приложения на всем протяжении его работы была и останется самая первая создаваемая форма, владельцем которой становится объект Application. Ныне и присно и вовеки веков )
botaniQ (2008-02-14 14:15:00) [4]Да она вообще не нужна.....просто ... ней все работает...но естественно я так программу не оставлю... ) надо другой выход искать :)
Сергей М. (2008-02-14 14:12:00) [5]
> MainForm.MyReqFramePlace.Parent:=AuthForm
За каким лешим нужна эта строчка ?)
Palladin (2008-02-14 14:10:00) [6]правильно, главной формой то AuthForm стала...
botaniQ (2008-02-14 14:09:00) [7]Я ваще тащЮЮССя....странно, но только при такой записи все работает...
Application.CreateForm(TAuthForm, AuthForm);
Application.CreateForm(TMainForm, MainForm);
AuthForm.Show;
MainForm.MyReqFramePlace.Parent:=AuthForm;
Причем Frame появляеся именно на MainForm....
Билеберда какая-та..
Сергей М. (2008-02-14 12:53:00) [8]
> exception почему возникает ?
Ты сначала с фреймом разберись, куда он у тебя пропал, сам по себе, якобы)
Потом исключением займешься. Но скорее всего исключение есть прямое следствие этого таинственного исчезновения)
Какие еще выкрутасы ты там творишь в коде обработчиков событий со своими формами/фреймами - то нам не ведомо) ... Где-то, примерно в 17-й строке, у тебя ошибка)
botaniQ (2008-02-14 12:50:00) [9]а exception почему возникает ?
Сергей М. (2008-02-14 12:49:00) [10]
> опять абсолютно одинаковые...12181452
Ну значит он, фрейм это, просто invisible стал почему-то)
Palladin (2008-02-14 12:48:00) [11]и с его handle заодно...
Palladin (2008-02-14 12:47:00) [12]а теперь с Parent'ом фрейма...
botaniQ (2008-02-14 12:45:00) [13]опять абсолютно одинаковые...12181452
botaniQ (2008-02-14 12:44:00) [14]момент...)
Сергей М. (2008-02-14 12:44:00) [15]
> Palladin © (14.02.08 12:41) [15]
Так поступают не батаники, но настоящие партизаны на допросе в гестапе)
Клещами вытягивать приходится)
Сергей М. (2008-02-14 12:42:00) [16]
> botaniQ (14.02.08 12:41) [14]
А вторая цифирка ?)
Palladin (2008-02-14 12:41:00) [17]в обоих showmessage ?
botaniQ (2008-02-14 12:41:00) [18]фрейм:
12181340
Palladin (2008-02-14 12:38:00) [19]ту же операцию с указателем фрейма сделай...
botaniQ (2008-02-14 12:37:00) [20]12132436 и 12132436
т.е. одно и тоже число :(