![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| stranik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 19.4.2006 Репутация: нет Всего: нет |
Уважаемые мастера помагите начинающему.
Имеется две формы MainForm и frlogin. frLogin исключена из списка автоматически создаваемых. В событие onCreate MainForm пишу следующие
В результате при запуске приложения на экран выводится 2 формы, а необходимо одну. С какой стороны плясать с бубном ? |
|||
|
||||
| Marlin |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 20.2.2006 Репутация: нет Всего: 1 |
Если ты хочешь манипулировать формами, то тебе нужно это делать точно не в обработчике OnCreate главной формы. Форма находится на стадии создания, а ты уже пытаешься, что с ней сделать.
У тебя ошибку этот код не вызывает? Работай в самом проекте dpr и от туда исходя из условий пляши. Посмотри примеры с заставками программ. --------------------
Программист решает проблемы, о которых пользователь даже не задумывается,способами, о котороых он даже не подозревает. |
|||
|
||||
| stranik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 19.4.2006 Репутация: нет Всего: нет |
Немного поясню задачу. При вызове формы frLogin осуществляется коннект к базе данных, проверяется логин и пароль юзверя а также право доступа даной персоны. На основании полученных данных строится MainForm.
Ошибку не выдает. Заставка у проги уже есть |
|||
|
||||
| Marlin |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 20.2.2006 Репутация: нет Всего: 1 |
У тебя логика программы не верно построенная, и из за этого ты зашел в тупик.
Тебе нужно проверять все условия до загрузки главной формы. например:
Добавлено @ 07:18 в условии можешь сделать запрос к базе данных и т.д. Это сообщение отредактировал(а) Marlin - 19.4.2006, 07:17 --------------------
Программист решает проблемы, о которых пользователь даже не задумывается,способами, о котороых он даже не подозревает. |
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Чтобы при запуске приложения не показывалась главная форма нужно писать в oncreate application.showmainform:=false; Потом, после проверки пароля форму можешь показать обычным mainform.show, но это нужно делать не в oncreate, а где-нибудь в другой процедуре. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| stranik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 19.4.2006 Репутация: нет Всего: нет |
application.showmainform:=false вместо Hide. Ларчик просто открывался. Всем большое спасибо.
|
|||
|
||||
| stranik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 19.4.2006 Репутация: нет Всего: нет |
Ситуация №2. В своем проекте я использую DataModule.
Application.CreateForm(TMainForm, MainForm); Application.CreateForm(TfrDM, frDM); т.е. он создается после MainForm. Вернемся теперь к форме frlogin. На ней имеются: cbOper: TRxDBLookupCombo; cbSmena: TComboBox; eLogin: TRxDBLookupCombo; Наборы данных мы берем из DataModule. В uses все как надо прописано. При запуске приложение не может найти ADOConnection, так как Application.CreateForm(TfrDM, frDM); еще не выполнено. Подскажите как лучше сделать? Создавать новое подключение на форме frLogin не хоттелось бы.. |
|||
|
||||
| Демо |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1278 Регистрация: 3.11.2005 Репутация: 30 Всего: 50 |
Тебе же сказали, что не в OnCreate главной формы надо делать это.
Для авторизации на сервере БД самое место для вызова формы - frDM.OnCreate -------------------- |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |