3

首先,我从来没有从头开始写过属性编辑器,但是在另一个问题上得到了一些帮助。请参阅那里接受的答案。这是在 Delphi 7 中,现在我已经开始使用 XE2,我必须确保我的属性编辑器与7和 XE2 兼容。

它本质上是一个集合编辑器,不同的是每个集合项在父表单中都有自己的命名组件。自 7 以来 XE2 中的属性编辑器有什么新东西吗,因为它是一个巨大的版本跳跃?

我不想为不同版本制作我的单元的完整副本。我想在一个单元中维护所有可能的版本。

编辑

似乎 Delphi XE2 具有与 Delphi 7 相同的属性编辑器,但我面临的问题是,虽然我包含DesignIDE在我的包中,但它找不到任何东西,所以我不得不将ToolsAPI文件夹添加到我的库路径中。

但是,在此之后我有一个新问题。

[DCC Fatal Error] ToolsAPI.pas(18): F1026 File not found: 'DockForm.dcu'

我迷失在 BPL 包的整个概念中,并且需要其他包等等。

4

2 回答 2

4

DesignIntf​​、DesignEditors、DesignMenus、DesignWindows 是 DesignIDE.bpl 的一部分,位于 \Embarcadero\RAD_Studio\9.0\lib\win32\release\designide.dcp。但是64 位没有 designide.dcp,这就是为什么它在编译引用这些单元的 64 位包时会引发错误。

DesignIDE 没有 64 位版本,因为它用于设计时包,而设计时包只有 32 位(记住 Delphi IDE 仍然只有 32 位)。因此,请始终将您的设计时包设置为 32 位,而不是 64 位。:)

麦克风

于 2012-01-18T05:44:02.283 回答
3

源代码在DockForm.pasDelphi XE 和 Delphi XE2 中均不可用。

您可以尝试发布在 SO 适用于 Delphi 2010 上的类似问题上的这个已接受的答案。

据推测,它被编译并包含在一些已经随 Delphi XE2 分发的包中。

于 2012-01-09T09:55:54.580 回答