Последовательная работа с 3 и более формами

Помогите пожалуйста реализовать следующее -распишу по этам ( в обязательной последовательности)1. Создаётся форма FormConf - конфигурационная, содержит в себе едиты и т.д. с настроечной информацией. эта форма Должна быть всё время HIDE (пока её не вызвали из главной формы методом show). нужна чтобы читать значения едитов в дальнейшем.2. Создаётся форма FormInitialize - Инициализация, происходят проверки , в том числе с данными из FormConf. сразуже после этого осуществляется переход к ГЛАВНОЙ ФОРМЕ Form1 переход осуществляется в OnCreate спустя sleep(1000);3. Создаётся главная форма Form1, при этом форма инициализации(п.2) Free.Сложность в том, что все задачи сводятся к formX.Hide в OnCreate что невыполнимо изза особенностей дельфы. Как мне тут скрывать форму и соответственно описать исходный код создания форм (последовательность, особенности)пример попытался написать, ... запутался в нём...  Form3.rar 316,83 Kb
6 ответов

Если ход процесса инициализации отображать не нужно, то форма инициализации как таковая не нужна. Зачем для инициализации использовать отдельную форму? Инициализацию можно провести и в главной форме, например в конструкторе. Если ход процесса иниц. отображать нужно, то делается splash, и для взаимодействия между формами, используется либо прямые вызовы методов форм, либо механизм виндовых сообщений.Например можешь сделать так: выстави splash-у FormStyle - fsStayOnTop,  В конструкторе гл. формы проведи инициализацию, и после делай close splash форме, либо посылай сообщение WM_CLOSE.


угу спасибо, покопаю в этом направлении. конечно, если правильно, то форму конфигурации можно не создавать, а обойти это дело. а Вот инициализация сопровождается индикацией о выполнении. 2 формы я связать могу, просто по созданию одной создавать другую, а в созщдании другой уюить Free предыдущую. а вот с 3 формами, при этом ещё и ""Hide в OnCreate"", нужно колдовать , темболее что при создании и скрытии её колбасит- появляется исчезает, что не есть хорошо. 


1. Создаётся форма FormConf - конфигурационная, содержит в себе едиты и т.д. с настроечной информацией. эта форма Должна быть всё время HIDE (пока её не вызвали из главной формы методом show). нужна чтобы читать значения едитов в дальнейшем.
Походу тебя интересует реализация настроек в программе. Если да, то заморочки с формой инициализации и слипами абсолютно лишние.Очень удобный компонент для работы с опциями:TOptionsЛегко настраивается с помощью редактора. Легко и удобно используется в коде. Не требует приведения типовПример:
  Edit1.text := Options1['Текст1'].Value;  Edit2.text := Options1['Текст2'].Value;  TrackBar1.Position := Options1['число1'].Value;  SpinEdit1.Value := Options1['Число2'].Value;  CheckBox1.Checked := Options1['еще одна опция'].Value;
Умеет работать с контролами.Умеет хранить опции в .ini-файлах, реестре и оперативке.Ссылка ведет на пост в блоге.Страничку, с полным описанием, пока еще в сеть не выложил, по-этому все вопросы по компоненту желательно задавать в блог.Если интересует не это, то по вопросу и архиву не совсем понятно что должно получится, уточни.


Создавай и показывай формы в dpr-файле. Чтобы форма созданная первой не становилась главной создавай ее вызовом конструктора, а не Application.CreateForm


Создавай и показывай формы в dpr-файле.
Отличный совет от "эксперта"! Вот только не понятно как избежать конфликтов с Дельфи.Примите и прочь!


Конфликтов не будет. А northener отправляется в читальный зал за хамство.