Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.09;
Скачать: CL | DM;

Вниз

Проблемы с последовательностью событий формы   Найти похожие ветки 

 
Александр Иванов ©   (2006-06-09 14:56) [0]

Ситуация такая:

В первой форме переопределен конструктор, он получает параметром DataSet и FormStyle

constructor TForm1.Create(owner:TComponent; ActiveDataSet : TOraQuery; Style : TFormStyle);
begin
 inherited Create(self.Owner);
 self.FormStyle := Style;
 self.DSet := ActiveDataSet;
...


Вторая форма является наследником первой. И в ее обработчике onShow я обращаюсь к DSet. Появляется исключение AccessVioletion. Но дебаггер показывает строку ошибки из конструктора первой формы: self.FormStyle := Style;
Переместил обращение в DSet из onShow в onCreate, все заработало.
Но осталось ощущение что я не понял причину.

Подскажите в чем тут может быть проблема.


 
StriderMan ©   (2006-06-09 15:17) [1]

а у наследной формы конструктор тоже свой или как у предка?


 
Александр Иванов ©   (2006-06-09 15:23) [2]

StriderMan ©   (09.06.06 15:17) [1]

У наследника нет ни одного своего конструктора


 
StriderMan ©   (2006-06-09 15:45) [3]

посмотри отладчиком, выполняется ли конструктор предка


 
Александр Иванов ©   (2006-06-09 16:09) [4]

StriderMan ©   (09.06.06 15:45) [3]
Цитата из [0]:
Но дебаггер показывает строку ошибки из конструктора первой формы: self.FormStyle := Style;


 
Игорь Шевченко ©   (2006-06-09 16:16) [5]


> Но дебаггер показывает строку ошибки из конструктора первой
> формы: self.FormStyle := Style;


Потому что исключение происходит, скорее всего в inherited Create.
Если у формы установлено свойство Visible в true, то OnShow будет выполнено в inherited Create


 
Александр Иванов ©   (2006-06-09 16:28) [6]

Игорь Шевченко ©   (09.06.06 16:16) [5]

Да Visible установлено в True. Спасибо, не сообразил.



Страницы: 1 вся ветка

Текущий архив: 2006.07.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.082 c
2-1150989372
Urvin
2006-06-22 19:16
2006.07.09
List View - не добавляются элементы


3-1147329972
petvv
2006-05-11 10:46
2006.07.09
SQL запрос


15-1149586462
pavel_guzhanov
2006-06-06 13:34
2006.07.09
Возникла необходимость ознакомиться с Oracle


2-1150913706
mctarik
2006-06-21 22:15
2006.07.09
Кто сегодня за старшего?


2-1150971343
Blari
2006-06-22 14:15
2006.07.09
Детский вопрос