Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как вообще это правильно делается? [D6, WinXP]


brestmarket ©   (2002-10-23 02:12:00) 

Использую FRegIniFile для чтения/записи значений реестра, напр.
chb1.Checked := FRegIniFile.ReadBool("", "chbOpenNewWind", False);

Код чтения должен обязательно выполняться в одной форме, а значения из реестра должны писаться в другой форме - при попытке использования кода чтения из реестра в Form1.Create одной формы и запись значений в другую - ошибка.

Как ее избежать?


Рыжик   (2002-10-23 14:07:00) [1]

Ладно, если надо,чтобы первая была главной, то создавайте её первой, но не пишите в неё ничего. А в OnCreate второй формы вызывайте метод первой формы, который будет читать,писать и т.д.


brestmarket   (2002-10-23 13:46:00) [2]

Я так и делаю, но, хоть вторая форма и Visible=False все равно показывается при запуске приложения, т.к. становиться Main. Как запустить ее раньше других, оставив невидимой и показав первой Form1 ?


Рыжик   (2002-10-23 13:24:00) [3]

Ответ очевиден: сперва создать вторую форму, а потом уже первую ;)


brestmarket   (2002-10-23 13:08:00) [4]

Да, Рыжик абсолютно прав - все как-раз происходит из-за предварительного вызова второй формы, куда и должны заносится значения из реестра. Как-же при запуске первой формы добавить во вторую - куда запихнуть этот код?


Рыжик   (2002-10-23 10:31:00) [5]

Может быть Form2 создаётся после Form1? Тогда при Form1.Create формы Form2 ещё нет. И сл-но попытка написать туда чего-то не пройдёт. Посмотрите в файле проекта (который *.dpr) последовательность создания форм.


Separator   (2002-10-23 08:14:00) [6]

Приведи свой код


DeadHDD   (2002-10-23 07:01:00) [7]

Какая ошибка именно?


Наверх

Титульная страница Поиск, карта сайта Написать письмо