Вниз
Скачать: CL | DM;

Наследование   Найти похожие ветки 

← →
REA ©   (2004-04-13 10:43) [0]

Мне понадобилось использовать стандартные компоненты, но добавить к ним некую функциональность при чем общую для всех. Т.е. налицо как бы множественное наследование.
Можно наверно использовать интефейсы. Есть идеи как можно решить задачу?


← →
Игорь Шевченко ©   (2004-04-13 10:50) [1]


> но добавить к ним некую функциональность при чем общую для
> всех


Например ?


← →
uny   (2004-04-13 10:50) [2]

копирайт можно поставить...


← →
DiamondShark ©   (2004-04-13 11:03) [3]


> Есть идеи как можно решить задачу?

Так прямо и решать.

ICommonFunctionality = interface
...
end;

TMyStandardComponent1 = class(TStandardComponent1, ICommonFunctionality)
...
end;

TMyStandardComponent2 = class(TStandardComponent2, ICommonFunctionality)
...
end;

далее со всеми остановками.


← →
REA ©   (2004-04-13 11:07) [4]

Ну я не имел ввиду вообще все компоненты.
Например мне нужна функция настройки в доступном для юзера виде (цвет, шрифт и т.п.), нужна функция передачи данных в компоненты в моем формате в зависимости от которых может например меняться текст на Label или Grid. Ну возможно что-то еще понадобится.
Обе указанные проблемы конечно можно решить послав сообщение компоненту, а аргументы положив в доступное место. Результат тоже правда придется куда то положить.


← →
Reindeer Moss Eater ©   (2004-04-13 11:13) [5]

TMyBaseComponent = class
public SetupFunctionForColorAndFont; virtual; abstract;
public FunctionForTransmittingData(AData:Pointer; ADataLen:Cardinal); virual; abstract;
end;


← →
REA ©   (2004-04-13 12:37) [6]

2Reindeer Moss Eater>
Так я умею, а где тут перегрузка стандартных компонентов (панели, лэйблы, гриды...)?

Проблема еще в том, что мне надо их надо накидать (в моем же дизайнере) на форму и грузить плугины динамически по мере появления компонентов, но это все как раз не слишком сложно.



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

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



Память: 0.46 MB
Время: 0.023 c
1-1081973676
Boyza
2004-04-15 00:14
2004.05.02
Текст через Канвас


3-1080906055
Дмитрий
2004-04-02 15:40
2004.05.02
CONNECT TO FIREBIRD через Инет!!! Хелп!


14-1081182186
gn
2004-04-05 20:23
2004.05.02
Россия вернула себе титул чемпиона мира по программированию


14-1081781692
Undert
2004-04-12 18:54
2004.05.02
SSL сертификат


6-1078621428
GanibalLector
2004-03-07 04:03
2004.05.02
RasDial или InternetDial




   Наверх