Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизПоследовательность событий жизненного цикла форм Найти похожие ветки
← →
Kiril123 (2010-02-18 12:12) [0]Имеется прога с тремя окнами. Как Дельфи при запуске создает-показывает формы? В какой последовательности?
1)Form1.Create
2)Form1.Show
3)Form2.Create
4)Form3.Create
Или в другой последовательности?
← →
Игорь Шевченко © (2010-02-18 12:14) [1]как в .dpr написано
← →
Kiril123 (2010-02-18 12:20) [2]>Игорь Шевченко.
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.CreateForm(TForm3, Form3);
Application.Run;
Show нету ни на одну форму. Как она 1-ую форму показывет не понятно..
← →
Sergey13 © (2010-02-18 12:55) [3]> [2] Kiril123 (18.02.10 12:20)
> Как она 1-ую форму показывет не понятно..
Ну так она наверное указана как главная.
← →
Игорь Шевченко © (2010-02-18 13:06) [4]
> Как она 1-ую форму показывет не понятно..
согласно свойству Visible формы
← →
Kiril123 (2010-02-18 18:08) [5]А когда происходит Form1.Show? После Application.CreateForm всех остальных? Почему спрашиваю,-на 1-ой оншов процедуры работают с компонентами ост. форм(CheckBox-es) и при запуске IDE выдает Runtime 210. Можно ли это делать или прога не успевает создать до этого момента ост. формы?
← →
Игорь Шевченко © (2010-02-18 18:21) [6]
> Почему спрашиваю,-на 1-ой оншов процедуры работают с компонентами
> ост. форм(CheckBox-es) и при запуске IDE выдает Runtime
> 210. Можно ли это делать или прога не успевает создать до
> этого момента ост. формы?
Предлагаешь поработать отладчиком ?
← →
Вася (2010-02-18 23:43) [7]Ставишь точку останова на OnShow, смотришь - созданы ли вторая и третья формы (если еще не созданы, то соответствующие глобальные переменные равны nil)
← →
Германн © (2010-02-19 01:35) [8]
> Kiril123 (18.02.10 12:12)
>
> Имеется прога с тремя окнами. Как Дельфи при запуске создает-
> показывает формы? В какой последовательности?
> 1)Form1.Create
> 2)Form1.Show
> 3)Form2.Create
> 4)Form3.Create
> Или в другой последовательности?
Лучше бы привел кусок кода, в котором "выдаётся" ошибка.
← →
Kiril123 (2010-02-19 10:18) [9]>Вася. Подскажи плиз как посотреть создана ли форма?
>Германн. Код длинный очень..
← →
{RASkov} © (2010-02-19 11:44) [10]> [9] Kiril123 (19.02.10 10:18)
> Подскажи плиз как посотреть создана ли форма?
Ты запутался, тебе прямой ответ не поможет.
Читай справку, изучай порядок вызовов обработчиков событий.
А форма создана после вызова конструктора у класса.
И еще не нужно путать сам объект с переменными, ссылающимися на этот объект...
т.е. смотри:var F: TFOrm;
begin
F:=TForm.create();
F:=nil;
if Assigned(F) then ?
end;
Создана ли форма F?
← →
Плохиш © (2010-02-19 11:54) [11]
> Kiril123 (18.02.10 12:12)
В справке и документации к указанной D7 всё это подробно описывается.
← →
Kiril123 (2010-02-19 12:24) [12]>{RASkov},Плохиш. Спасибо за советы,почитаю справку.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.06 c