Delphiで多重継承が出来ない事は承知しておりますが
何かしら代替手段はないでしょうか?
やりたいのは以下のようなことです。
・TCustomLabelを継承したTMyLabelを作成
・TCustomPanelを継承したTMyPanelを作成
・この両者で、多くの同じプロパティを持ちたい。
TPersistentを継承したプロパティクラスを用意して
両者のメンバーにすれば出来なくもないのですが
それだとプロパティの階層がひとつ深くなってしまいます。
また多重継承の代わりにinterfaceがあるそうですが、
今ひとつ使い方がピンと来ないので、もしinterfaceで
上記のようなことが可能なら、勉強しようと思っています。
(ちなみに環境はDelphi2010です)
多重継承と呼ばない
根本の理解が間違ってると思う
あれこれ調べてみましたがどうもうまくいきません。
多重継承というのが正しい表現かはわかりませんが
ふたつのクラスの性質(TCustomLabel+TMyBaseClassのような)を
引き継いだコンポーネントというのは難しそうですね。
あきらめて単純なプロパティにします。
のりぺぃさん
SUBComponentを使うのはどうでしょうか?
MrXrayさんのサイト説明があったように記憶してます。
ツイート | ![]() |