微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为不同的类添加一些常用方法

如何解决为不同的类添加一些常用方法

我有以下结构...我制作的三个控件,它们继承自同一个公共控件 TCustomControl

TDriveBar [MyShell.pas] > TCustomPanel [Vcl.ExtCtrls.pas] > TCustomControl [Vcl.Controls.pas]...

TPathBar [MyShell.pas] > TCustomControl [Vcl.Controls.pas]...

TFileList [MyShell.pas] > TCustomSuperList [MySuperList.pas] > TCustomControl [Vcl.Controls.pas]...

现在,我想改变一些东西,以便我的 TDriveBarTPathBarTFileList 可以作为一个共同的祖先类被访问(类型转换)并且有一些共同的新方法。那个祖先似乎是TCustomControl,但我不知道是否可以在那里插入一个新类。更重要的是,我希望 TCustomSuperList 在单独使用时不要包含这些新方法。不知道有没有让自己明白...

我不能使用接口,因为我的想法是只编写一次通用方法并在那些控件中使用它们......有了接口,我必须在每个 Shell 控件中实现它......

解决方法

Delphi 能够使用关键字 implements 将接口的方法委托给另一个对象。

在您的情况下,想法是创建一个对象,实现一个具有通用方法的接口,并在您的每个组件中创建一个具有接口类型并委托给该对象的属性。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。