![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
Проблема следующая: Есть форма, в прожекте стоит вот здесь:
Есть процедура Form4.Create. В етой процедуре выполняются некие проверки. В зависимости от результата проверки мне надо или ПОКАЗЫВАТЬ данную форму (Result = true) или НЕ показывать данную форму, а показать например форм2. (Result = False). Как это реализовать? Спасибо! Это сообщение отредактировал(а) Zorak - 4.2.2011, 10:20 -------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
А зачем у тебя все формы в авто создании? Убери их и создавай только когда они действительно нужны.
|
|||
|
||||
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
тоесть вот так ? -------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Form2.hide
|
|||
|
||||
Poseidon |
|
||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Ну, Form.Create процедуры у тебя точно нет. Такое даже компилятор не пропустить. А вообще форма же показывается как Form4.Show
Но! Самое главное! У тебя не получится вызвать Show у формы, если она еще не создана. Т.е. этот код ты не сможешь выполнить в OnCreate других форм, т.к. они создаются раньше чем Form4. Получится что OnCreate будет выполнено раньше, чем создастся Form4. Получишь вылет AV. Я бы проверку прямо в модуле проекта сделал бы. Как-то так:
Но тут тоже есть нюансы. В коде программы нужно предусмотреть проверку, а создана ли форма4, при обращении к ней. Иначе опять же AV. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||
|
|||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Ну я не знаю структуру твоего приложения. Могу лишь догадываться и советовать. Сделай так, чтобы автосоздавалась только одна форма, она будет главной. А уже в главной форме создавай и показывай другие. Добавлено через 2 минуты и 11 секунд Лучше перенеси это на какую-нить кнопку
|
|||
|
||||
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
спасибо большое.. много чего полезного,почти розобрался. Ушол реализовывать. Отпишусь)
-------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
Такс, ситуация такая: Есть код создания главной формы (Все остальные формы пересены из автосоздаваемых в доступные)
Должн6о работать так: Когда файл отсутствует или запись в файле не совпадает с Control := GetHardDiskSerial('c'); то появляется форма 4, в ином случае, когда файл существует И запись соответствует Control := GetHardDiskSerial('c'); то появляется форма 2 БЕЗ формы 4.... После выполнения того что я написал, при условии что запись соответствует то появляется И форма 2 И форма 4. Что не так? P.S. Poseidon а как сделать? Это сообщение отредактировал(а) Zorak - 4.2.2011, 11:06 -------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Немного по коду:
У тебя форм2 еще используется где-нибудь? Если нет, то и так пойдет. Только тогда есть смысл по закрытии форм2 делать ей Free. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
Zorak |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
Ответ: первая строчка - логин, он тоже будет использоватся но ето уже технический момент, а вот вторая ето уже ключик.
Вопрос: а как заменить OnCreate ??.. Мне нужно ее скрыть если пароли совпадают).. Или как вариант как сделать так чтобы оно автоматически вписывало в едит пароль тот что в файле и генерировало нажатие кнопки ок (проверка совпадаемости) БЕЗ участия пользователя, ибо пользователь должен сам ето делать когда файла с паролем не существует. Если такое возможно то получится что сгенерированное нажатия кнопки было после создания формы?
Ответ: Да, используется, но каждый раз данные генерируются по новому и отправляются на ету форму. Так что в принципе вполне реально делать ей Фри. Но только вот плохо вижу смысл, не обьясниш? Это сообщение отредактировал(а) Zorak - 4.2.2011, 12:42 -------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
||||||
|
|||||||
Poseidon |
|
||||||||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
что у тебя вообще в форм4 и в форм2? Если форма используется многократно за время одного сеанса работы программы, то не целесообразно каждый раз при работе в этой формой ее создавать. Если форма показывается только один раз и все, то целесообразно. Но по завершении работы формы логично освободить занимаемые ей ресурсы. Иначе пропадает смысл всех этих заморочек. Т.е., грубо говоря, Создали - Показали - Освободили. Или так: Create - Show - Free и забыли о ней. "Забыли" в том смысле, что нигде больше не используем и не обращаемся к ней. -------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
||||||||
|
|||||||||
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
Ответ: В принципе файл и будет состоять из двух строчек. -)
Ответ: Хорошо, попробую, отпишусь ближе к вечеру. Ответ: В форм4 пользователь просто вводит логин и пароль и кликает на ок... Но ето только первый раз при запуске программы, а дальше она в принципе не нужна.. разве что файл будет модифицирован и пароль будет не правильным или же пользователь его просто удалит. А форм2 используется для вывода некого отчета о выполнении того или иного действия, например в программе будет возможность создавать файлы и задавать им параметры, после кликанья юзером на "Создать" в форм2 выводится отчет о успешном или не успешном выполнении етого процеса) Ладно, буду дома накодЮ и отпишусь) Это сообщение отредактировал(а) Zorak - 4.2.2011, 16:09 -------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 53 Всего: 133 |
Ёклмн. У тебя там текстовый файл. Пусть и с расширением dat, но все-равно текстовый. Подсунет туда тебе какой-нибудь юный хацкер "Войну и мир" и завалит тебя репортами "все глючит, ничего не запускается, все паламалася!" Оно то конечно навряд ли и маловероятно, но основываясь на своем опыте я тебе советую предусмотреть все, особенно с общеизвестными форматами.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
Zorak |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 720 Регистрация: 13.11.2007 Репутация: нет Всего: 3 |
Всё, все получилось и все работает, Всем большое спасибо!
-------------------- Знание - сила. А сила есть, ума не надо... Занимаюсь интернет бизнесом и ищу новых партнеров. Кому интересно - обращайтесь в ЛС, скайп или мыло. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "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. |