对于这些类型的搜索,Google 没有用处,因为你会得到数亿个结果,绝对没有一个与具体问题相关。
问题很简单:
- 在 Delphi 中是否可能拥有类引用属性?
- 如果可以,如何实现?
以下是我尝试过的内容...
type
TMyObject = class
// ...
end;
TMyObjectClass = class of TMyObject
TMyObjectA = class(TMyObject)
// specifics here
end;
TMyObjectB =class(TMyObject)
// specifics here
end;
TMyComponent = class(TComponent)
private
FObjectType: TMyObjectClass;
published
property ObjectType: TMyObjectClass read FObjectType write FObjectType;
end;
以上代码可以编译通过,但对象视图根本不显示ObjectType属性。
我的目标是让我能够选择特定基类的派生类,以使相同组件以不同方式运作。
我希望这样做的原因是组件不需要直接了解子类(它需要完全模块化)。
让我再次明确一点:我不能使用枚举来选择子类类型,因为组件不能直接链接到子类类型(在这种特定情况下根本不可能)。
无论如何,提前感谢您!