![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
При запуске приложения вызвать форму перед показом основной [D7, XP]
ka1n © (2006-12-20 16:14:00)Приложение бля базы данных.
Основное окно - MDI.
При запусе приложения, до вызова основной формы, нужно вызвать форму с диалогом выбора пользователя и пароля.
Если сделать основным форму с диалогом, то при запуске основной формы и попытке создать дочернее MDI-окно вылетает ошибка
First chance exception at $7C812A23. Exception class EInvalidOperation with message 'Cannot create form. No MDI forms arecurrently active'. Process ANTILope.exe (3584)
ka1n (2006-12-25 14:55:00) [1]Вот я ... не знаю кто....
это же очевидно ... аааа. (хватаясь за голову)
> > FormLogon.Show;
>
>
> всё-таки ShowModal.
Loginov Dmitry (2006-12-22 15:42:00) [2]Удалено модератором
Сергей М. (2006-12-22 15:34:00) [3]Application.Initialize;
FormLogon:=TFormLogon.Create( nil);
try
ModResult := FormLogon.ShowModal;
finally
FormLogon.Free;
end;
if ModResult = mrOk then begin
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end;
Loginov Dmitry (2006-12-22 15:32:00) [4]
FormLogon:=TFormLogon.Create(Application);
FormLogon.Show;
FormLogon.Update;
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
FormLogon.Free;
Application.Run;
tesseract (2006-12-22 15:27:00) [5]
> FormLogon.Show;
всё-таки ShowModal.
ka1n (2006-12-22 15:18:00) [6]Так?
Но форма MainForm все равно запускается, а подней FormLogon
Application.Initialize;
FormLogon:=TFormLogon.Create(Application);
FormLogon.Show;
Application.CreateForm(TMainForm, MainForm);
Application.Run;
Loginov Dmitry (2006-12-20 16:46:00) [7]Используй Application.CreateForm() только для создания главной формы.
Остальные формы и модули данных - с помощью TForm.Create().
Сергей М. (2006-12-20 16:33:00) [8]
> alex_*** © (20.12.06 16:30) [6]
Кто ж спорит ? Так оно и есть)
alex_*** (2006-12-20 16:32:00) [9][6] ну типа вдогонку. Сначала не осознал смысл поста [5] :)
alex_*** (2006-12-20 16:30:00) [10]
> Не делай ее основной - и проблемы не будет.
>
по мне как-то извращенно когда маленький диаложек - главная форма для большого проекта. Да и физически и логически это не так
Сергей М. (2006-12-20 16:27:00) [11]
> Если сделать основным форму с диалогом
Не делай ее основной - и проблемы не будет.
Сергей М. (2006-12-20 16:21:00) [12]
> до вызова основной формы, нужно вызвать форму
Вся соль в том, что ты подразумеваешь под "вызовом" формы ...
Есть созданиеобъекта-формы, есть визуализациясозданной формы, а что в дан.случае есть "вызов", "запуск" ?
Sergey13 (2006-12-20 16:21:00) [13]> [0] ka1n (20.12.06 16:14)
Вызывай ее перед подключением к БД.
tesseract (2006-12-20 16:20:00) [14]А нельзя после открытия главной формы вызвать диалог ввода пароля?
alex_*** (2006-12-20 16:20:00) [15]Залезь в .dpr и перед стартом главной формы запусти нужный диалог