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

Вниз

Как переопределить событие?   Найти похожие ветки 

 
yurikon03   (2003-04-03 09:20) [0]

Например в компоненте наследнике от TTreeView при возникновении события OnChange выполнялся сначала мой код, а потом тот, который указан в Inspector`е?


 
Skier ©   (2003-04-03 09:22) [1]

Перекрой в наследнике метод Change
procedure TCustomTreeView.Change(Node: TTreeNode); dynamic;


 
yurikon03   (2003-04-03 09:39) [2]

>> Перекрой в наследнике метод Change
>> procedure TCustomTreeView.Change(Node: TTreeNode); dynamic;
А dynamic обязательно указывать?


 
Skier ©   (2003-04-03 09:44) [3]

>yurikon03
1)Без обид, но (!) - ПОЧИТАЙ КНИГИ.
2) объявление в наследнике
TYourTreeView = class(...)
protected
Change(Node: TTreeNode); override;
//..................
end; //TYourTreeView

реализация в наследнике
TYourTreeView.Change(Node: TTreeNode);
begin
//your code goes here...
end;


 
Михаил Баринов   (2003-04-03 09:48) [4]

Насчет книг - согласен с Skier ©. :)
По-моему в последнем примере нужно добавить inherited.
Он вызывает родительскую реализацию перекрытого метода.
override - просто убирает предупреждение, что метод наследника закрывает метод родителя.


 
Skier ©   (2003-04-03 09:53) [5]

>Михаил Баринов

> По-моему в последнем примере нужно добавить inherited

С учётом того что автор вопроса хочет "вызывать" "код, который указан в Inspector`е?", то - ДА.

А в общем случае всё зависит от того что требуется от перекрытого
метода.


 
yurikon03   (2003-04-03 09:54) [6]

>Skier ©
Без обид :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
3-44046
Stas
2003-03-26 10:19
2003.04.14
DBGrid


3-44073
Sergey_
2003-03-26 09:35
2003.04.14
Как создать запросом таблицу DBF


1-44153
Ильяс Садыков
2003-04-03 12:29
2003.04.14
Как сделать чтобы мышка летала?


3-44027
Pontic
2003-03-25 17:43
2003.04.14
Alias для Interbase


1-44259
sergey32
2003-04-02 13:48
2003.04.14
Как определить имя пункта меню