Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
1-91309
_MAXi_
2003-04-17 13:16
2003.04.28
Активация MDIChild формы через Toolbar


3-91207
from
2003-04-10 13:03
2003.04.28
Как в IB(FireBird) в ХП написать like с %


6-91427
VD601
2003-03-03 15:13
2003.04.28
Можно ли реализовать на DELPHI Web-тест?


8-91413
Сергей
2003-01-25 13:35
2003.04.28
Работа с картинками


1-91334
anbezr
2003-04-15 10:54
2003.04.28
Как правильно прервать создание компонента




   Наверх