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

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

Родитель и потомок сообща


Индеец ©   (2009-04-17 22:07:00) 

Здравствуйте, вот есть такой класс:
T1=class(Tobject)
....
protected
procedure ontimer1 (sender:TObject);
.....
procedure T1.ontimer1 (sender:TObject);
begin
.................
end;

Есть его потомок:
T2=class(T1)
.....
private
procedure ontimer1 (sender:TObject);
.......
procedure T2.ontimer1 (sender:TObject);
begin
inherited;
showmessage('1');
end;
.....


В T1 есть Ttimer, которому назначается событие ontimer1.
Хотелось бы, чтобы в потомке это событие переопределить, вызвать сначала реализацию родителя, а затем добавить свой код. Как это правильно реализовать ?


Германн   (2009-04-18 00:52:00) [1]


> Индеец   (17.04.09 22:08) [1]
>
> Точнее не родитель и потомок, конечно, а наследники....
> ошибся.
>

Только в толковании перевода на русский.


Индеец   (2009-04-17 22:37:00) [2]

Понял, спасибо большое


Игорь Шевченко   (2009-04-17 22:33:00) [3]


> В T1 есть Ttimer, которому назначается событие ontimer1.
>
> Хотелось бы, чтобы в потомке это событие переопределить,
>  вызвать сначала реализацию родителя, а затем добавить свой
> код. Как это правильно реализовать ?


T1  = class
private
 procedure OnTimer (Sender: TObject);
protected
 procedure DoOnTimer; virtual;
end;

T2 = class
protected
 procedure DoOnTimer; override;
end;

procedure T1.OnTimer (Sender: TObject);
begin
 DoOnTimer;
end;

procedure T2.DoOnTimer;
begin
 inherited;
 ....
end;


Индеец   (2009-04-17 22:08:00) [4]

Точнее не родитель и потомок, конечно, а наследники.... ошибся.


Наверх

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