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

Вниз

Grid   Найти похожие ветки 

 
VIB   (2003-04-15 14:56) [0]

Помогите разобратся с наследием.

Написал компонент наследник TDBGrid

Когда запускается приложение то срабатывает процедура
OnDrawColumnCell родителя. При этом новый код который я пишу
в компоненте игнорируется.

Подскажите что делать.


 
Skier ©   (2003-04-15 15:04) [1]

Если я правильно понял тебе нужно перекрыть
procedure DrawColumnCell(const Rect: TRect; DataCol: Integer;
Column: TColumn; State: TGridDrawState); dynamic;


 
VIB   (2003-04-15 15:09) [2]

Может я плохо объяснаю.
Мне надо чтобы сначала вызвалась процедура самого компонента,
а потом код который я дописал.

Если можно объясните попродробнее.


 
malkolinge ©   (2003-04-15 15:10) [3]

Чтобы перекрыть нужно написать после описания твоего метода слово override


 
Skier ©   (2003-04-15 15:17) [4]

объявление в твоём классе :
procedure DrawColumnCell(const Rect: TRect; DataCol: Integer;
Column: TColumn; State: TGridDrawState); override;
реализация :
procedure TYourGrid.DrawColumnCell(const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
//your code goes here...
inherited;//вызов события,...если оно есть
end;

У предка кода у этого метода "нет", там только стоит вызов
события если оно проиниц-но.


 
malkolinge ©   (2003-04-15 15:20) [5]


> inherited;//вызов события,...если оно есть


Это не событие, это вызов метода родительского класса.
Методы который отвечают за вызов собитий зовуться диспечерами или контроллерами


 
VIB   (2003-04-15 15:22) [6]

Вот пример реализации. Если я даже по F5 ставлю точку останова
прога не останавливается

procedure TForm1.MDBGridEh1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin

inherited;

If DataCol=0 then
begin
Canvas.Draw(Rect.Left,Rect.Top,Image1.Picture.Graphic);
end;

end;


 
Skier ©   (2003-04-15 15:23) [7]

>malkolinge
Умён !
Я же написал что родительский метод вызывает событие,
больше в родительском методе нет никакого кода.


 
Skier ©   (2003-04-15 15:25) [8]

>VIB
Нет слов !



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
14-91519
FLIZ
2003-04-11 02:26
2003.04.28
Про типусов, мнящих себя


6-91423
Novichek
2003-03-05 16:16
2003.04.28
Как скачать с интернета WEB-страницу


14-91455
Valentino
2003-04-11 09:26
2003.04.28
Очень срочно!!! Посоветуйте компоненты для работы со скинами.


3-91234
Lony
2003-04-10 19:29
2003.04.28
Надо выбрать базу данных.


6-91418
max2057
2003-03-03 12:38
2003.04.28
apache под WIN2000, CGI и безопасность