【问题标题】:How to create composite controls?如何创建复合控件?
【发布时间】:2012-09-13 16:05:43
【问题描述】:

谁能指出一些(厚厚的)书籍(甚至是网站)来解释如何创建自己的复合控件(例如作为其他几个控件的父级的 TPanel)?

我的意思超出了 Borland 的“组件编写者指南”。

我在 StackOverflow 上看到了很多关于这个主题的帖子,在每一篇文章中,人们都在对构造函数、继承、初始化代码的位置/时间、流问题、事件顺序、父子关系等方面存在矛盾

p>

【问题讨论】:

  • Danny Thorpe 的 Delphi 组件设计可能是您最好的选择。还有 Marco 的大书。
  • 谢谢大卫。我不知道丹尼索普的书。
  • Raize Software 的 Ray Konopka 仍然以 PDF 格式销售他的组件写作书。有点难找——在Pricing Page。尽管它的标题为 Developing Custom Delphi 3 Components,但它现在仍然非常有用,并且曾经是 Delphi 组件参考。
  • Borland Moscow 为其设计了自动解决方案 - 定制容器包。可惜直到 Delphi 5 才支持它。TFrame 似乎与它相去甚远,但甚至没有 CCP 的封装痕迹。不知道你是否可以将它移植到 XE。但在 D4/D5 时代,正是这样,你用组件和代码制作 TPanel 或 TForm,然后我点击一个魔术按钮,你将新组件安装到 Palette 中。
  • 这听起来和我想要的有点相似:stackoverflow.com/questions/9479872/… 正如 Uwe 在答案中显示的那样,SetSubComponent 是加入他们的神奇关键字。我唯一不喜欢 SetSubComponent 的地方是 WinSpy++ 之类的工具不会将控件视为单个控件,而是将其视为子控件等。

标签: delphi delphi-xe


【解决方案1】:

我发现 CCPack 有一个 sourceforge 存储库。

甚至还有许多 delphi 版本的软件包。

我已经安装在 Delphi XE2 上,它需要一个简单的修复工作(注册调用不正确,它给出了编译时错误,我不记得确切,但很容易纠正)

我可以按预期安装和工作。我已经使用它制作了几个简单的组件和一个复合组件。

CCPack on SourceForge

【讨论】:

  • 好的,距离你发布这个已经快一年了,但值得一提的是:我刚刚解决了这个问题,并为 Delphi 添加了高达 XE7 的软件包。
【解决方案2】:
猜你喜欢
  • 2010-11-12
  • 2016-07-17
  • 2012-06-09
  • 2014-02-04
  • 2011-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多