Доброго времени суток! Возникла такая проблема, то ли глюк какой-то, то ли я где-то напортачил. В общем при запуске программы, сначала почему-то запускается дочерняя форма (form4), а потом уже главная 1. Проверил вызовы этой формы на главной. Нигде в FormCreate главной формы нет вызова дочерней. Есть только один вызов при клике на кнопку, в таком виде form4.showmodal; Code: procedure TForm1.Button1Click(Sender: TObject); begin form4.showmodal; end; 2. В Project/Options/Forms Попробовал перенести форму из колонки Auto-Create Forms в колонку Available forms. Поправил вызов формы: Code: procedure TForm1.Button1Click(Sender: TObject); begin Application.CreateForm(Tform4, form4); form4.showmodal; Form4.Free; end; Проблема вроде решилась - форма перестала запускаться при старте. Но теперь при клике на TForm1.Button1 происходит вообще непонятное: Почему-то сначала активируются компоненты на этой форме, а потом уже сама форма. т.е. если на этой дочерней форме есть функция: Code: procedure TForm4.CheckBox1Click(Sender: TObject); begin if CheckBox1.Checked then ShowMessage('ГЛЮК'); end; То сначала появляется сообщение "ГЛЮК", а потом уже открывается сама форма......... Что делать?
немного прояснилась ситуация, у меня на Form4.Create идёт обращение к INI-файлу, который определяет будет ли отмечен CheckBox или нет: Code: procedure TForm4.FormCreate(Sender: TObject); begin Ini:=TiniFile.Create('config.ini'); CheckBox1.Checked:=ini.Readbool('PARAMS','cb',false); ini.Free; end; Но всё равно не совсем понятно - почему срабатывает процедура которая описана в Form4.CheckBox1 ?? По идее ведь в FormCreate должна просто установиться отметка, а происходит выполнение....