谷歌对这类搜索毫无用处,因为你会得到数以亿计的结果,这些结果绝对与特定问题无关。
问题很简单:
- 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;
上面的代码编译得很好,但是 Object Inspector 根本不显示该ObjectType
属性。
我在这里的目标(如果您还没有猜到的话)是做到这一点,以便我可以从特定的基类中选择一个类后代,以使相同的组件以不同的方式运行。
我想这样做,这样组件就不需要直接了解子类(它需要完全模块化)。
让我明确一点:我不能使用 Enum 在子类类型之间进行选择,因为组件不能直接链接到子类类型(在这种特殊情况下根本不可能)
无论如何...提前谢谢!