Delphi组件中的公共类型如何改写成一个长尾词的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计373个文字,预计阅读时间需要2分钟。
我已经子类化了FMX组件,想封装(虚拟)受保护的过程。此过程有多参数,在组件的类中声明为公共类型。当我尝试封装该过程时,得到一个错误,即我的组件是原始类型的子类。
我已经子类化了FMX组件,我想要覆盖(虚拟)受保护的过程.此过程有许多参数,在组件的类中声明为“公共类型”.
当我尝试覆盖该过程时,我得到一个错误,即虽然我的组件是原始类型的子类,但未声明其中一个类型.我不应该能够访问它吗?
该类定义如下:
TTabControl = class (...) public type TTabBarButton = (Left, Right) TTabBarButtons = set of TTabButton; .... protected procedure DoUpdate(const TabBarButtons: TTabBarButtons; ....); virtual; ... end;
现在,我已经将这个类子类化,并希望覆盖DoUpdate.
TMyClass = class (TTabControl) protected procedure DoUpdate(const TabBarButtons: TTabBarButtons; ....); override; .... end;
编译器抱怨我的类中没有定义TTabBarButtons.如果我在我的类中重新定义TTabBarButtons作为公共类型,那么它说定义与基类不同.
你能帮我解决这个问题吗?
非常感谢.
这对我有用:TMyClass = class (TTabControl) protected procedure DoUpdate(const TabBarButtons: TTabControl.TTabBarButtons; ....); override; .... end;
还有其他参数可以用来做同样的事情;当您开始跟踪所有这些类型和声明时,就会产生乐趣.祝好运.
本文共计373个文字,预计阅读时间需要2分钟。
我已经子类化了FMX组件,想封装(虚拟)受保护的过程。此过程有多参数,在组件的类中声明为公共类型。当我尝试封装该过程时,得到一个错误,即我的组件是原始类型的子类。
我已经子类化了FMX组件,我想要覆盖(虚拟)受保护的过程.此过程有许多参数,在组件的类中声明为“公共类型”.
当我尝试覆盖该过程时,我得到一个错误,即虽然我的组件是原始类型的子类,但未声明其中一个类型.我不应该能够访问它吗?
该类定义如下:
TTabControl = class (...) public type TTabBarButton = (Left, Right) TTabBarButtons = set of TTabButton; .... protected procedure DoUpdate(const TabBarButtons: TTabBarButtons; ....); virtual; ... end;
现在,我已经将这个类子类化,并希望覆盖DoUpdate.
TMyClass = class (TTabControl) protected procedure DoUpdate(const TabBarButtons: TTabBarButtons; ....); override; .... end;
编译器抱怨我的类中没有定义TTabBarButtons.如果我在我的类中重新定义TTabBarButtons作为公共类型,那么它说定义与基类不同.
你能帮我解决这个问题吗?
非常感谢.
这对我有用:TMyClass = class (TTabControl) protected procedure DoUpdate(const TabBarButtons: TTabControl.TTabBarButtons; ....); override; .... end;
还有其他参数可以用来做同样的事情;当您开始跟踪所有这些类型和声明时,就会产生乐趣.祝好运.

