Delphi XE5,如何将包中定义的帧放入组件调色板中

时间:2013-12-02 13:38:45

标签: delphi package vcl palette tframe

2件事是我的问题

1)a在包中定义了TMyframe = class(TFrame),但此框架未在框架调色板中列出。 所以我使用几种方法从一个设计时包中注册了我的类,但这些方法似乎都不是我想做的。 (RegisterCOmponent,RegisterClass和RegisterCustomModule)

2)自Delphi以来最大的问题是“不知道”我的框架,它作为常规组件处理,当内联使用时,其中定义的(子)对象在表单资源中显示为“对象”而不是比'继承'导致'对象blahblah已经存在'在以后创建表单时。 IDE的表单设计器中也会出现相同的行为。 当我将这个框架单元从我的运行时组件包移动到主模块(我的“内核”bpl)时,对象/继承问题就消失了,一切看起来都能正常工作。可能因为知道如何解决“TMyCustomFrame”。

那么......如何在一个包中定义框架并在设计时在表单中使用它们(在其他包或exe中),而不会让delphi弄乱我的表单资源。

使用XE5,Update1,VCL

(我会想出一些简单的例子,同时我已经想要那个问题了)

TIA

1 个答案:

答案 0 :(得分:2)

documentation开始,这似乎无法实现(强调添加):

  

向工具选项板添加框架

     

将框架作为组件模板添加到工具选项板中。 要向工具选项板添加框架,请在“表单设计器”中打开框架(不能使用嵌入在另一个组件中的框架),右键单击框架,然后选择“添加到调色板”。 “组件模板信息”对话框打开后,选择新模板的名称,调色板页面和图标。

似乎已确认here

  

分享相框

     

您可以通过两种方式与其他开发者共享框架:

     

将框架添加到Object Repository。

     

分发帧的单位(.pas)和表单(.dfm或.fmx)文件。

     

要向对象存储库添加框架,请打开包含框架的任何项目,右键单击“表单设计器”,然后选择“添加到存储库”。有关更多信息,请参阅使用对象存储库。

     

如果您将框架的单元和表单文件发送给其他开发人员,他们可以打开文件并将框架和表单添加到工具选项板中。如果框架中嵌入了其他框架,则只能将其作为项目的一部分打开。