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

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

Delphi 6. Вопрос с кастингом классов [D6, WinXP]


Morisson ©   (2003-02-10 18:22:00) 

Народ! Кто c кастингом классов Delphi разбирается, помогите!
Ситуация следующая: есть процедура, которая принимает параметр типа TWinControl и
пишет значение пришедшему в свойство OnEnter. Все приходящие объекты ессно наследники от TWinControl, но какой именно заранее неизвестно. Так вот проблем в том, что в TWinControl OnEnter - определено в разделе protected и ессно не видно. Как решить данную задачу - чувствую, что как-то кастовать надо, но что и как?
Примерный код процедуры:
procedure MyProc(AWinControl:TWinControl);
begin
with AWinControl as ? do
OnEnter:=MyOnEnterHandler;
end;


icWasya   (2003-02-10 18:44:00) [1]

это делается так

type TWinControl2=class(TWinControl);
procedure MyProc(AWinControl:TWinControl);
begin
with TWinControl2(AWinControl) do
OnEnter:=MyOnEnterHandler;
end;



app   (2003-02-10 18:39:00) [2]

А это знать и не надо.
Живи проще AWinControl.OnEnter := OnEnterHandler;


Наверх

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