Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
7-1077957561
Evgeniy_K
2004-02-28 11:39
2004.05.02
Cirix


7-1078907116
Alex*
2004-03-10 11:25
2004.05.02
Двусторонняя печать


3-1081383362
big_bugzy
2004-04-08 04:16
2004.05.02
Как в трех уровневом приложении получить идентификатор?


14-1081261783
Soft
2004-04-06 18:29
2004.05.02
Есть ли Бог на Марсе?


1-1081801283
VasRog
2004-04-13 00:21
2004.05.02
Сделать тест





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский