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

Вниз

Помоготе разобраться в иерархии.   Найти похожие ветки 

 
sashas ©   (2003-04-16 12:29) [0]

В Delphi есть компонент TPaintBox. Он наследник TGraphicObject, в котором определен TCanvas. Но он является чем то вроде protected и к нему нельзя обратиться из программы, а в TPaintBox можно (он опубликован). Почему так?
Я хочу работать со всеми наследниками TGraphicObject (рисовать на нем)


 
MBo ©   (2003-04-16 12:37) [1]

у TGraphicControl Canvas protected, чтобы можно было ПРИ НЕОБХОДИМОСТИ в наследниках объявить это свойство как public.
Т.е. делая свой компонент, производный от TGraphicControl,
просто пишешь
...
public
Canvas:TCanvas;
...


 
Skier ©   (2003-04-16 12:42) [2]

>sashas
Можно ещё сделать так :

type
THackGraphicObject = class(TGraphicObject);

var
AGraphicObject : TGraphicObject;
begin
//.............
THackGraphicObject(AGraphicObject).Canvas.
//.............
end;


 
Mike_Goblin ©   (2003-04-16 13:13) [3]

>Но он является чем то вроде protected и к нему нельзя >обратиться из программы, а в TPaintBox можно (он опубликован). >Почему так?
Потому что, в Object Pascal нельзя понижать видимость членов класса, т.е объявив Canvas в секции public TGraphicControl ты даешь public доступ к этому свойству во всех наследниках, что не есть очень хорошо



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
14-91470
malkolinge
2003-04-09 15:58
2003.04.28
Я УГАДАЛ СВОЙ ПАРОЛЬ !!!!!!!!!!!!!!!!!!!!1


4-91584
Diamond Cat
2003-02-28 03:45
2003.04.28
Ресурсы


3-91209
xxxCrazyManxxx
2003-04-10 09:04
2003.04.28
Помогите....... как из выборки взять Id значение последней строки


7-91571
ilya53
2003-03-12 08:56
2003.04.28
Процессы


6-91434
Bel
2003-03-05 15:40
2003.04.28
Delphi и Outlook