我们的项目使用了最初由Aardvark Consulting开发的名为AaWiz的第三方VCL组件。
此组件极大地简化了创建用户界面向导的过程。甚至可以在Delphi IDE中运行向导,无需编写代码甚至编译 该项目。
目前,我们在Delphi 5上有这个组件。有没有人将它迁移到Delphi 2005或更高版本?
谢谢
答案 0 :(得分:3)
自Delphi 5以来,设计时界面发生了相当大的变化。实际上,在Delphi 6和Delphi 5之间发生了设计时API的最大变化。检查gExperts网页上的OTA信息here。
从Delphi 6开始有一个级别的更改,其中包括:
重命名设计条款中的所有单位。其中带有“Dsgn”的旧名称被重命名。以前的DsgnIntf,现在是DesignIntf,DesignEditors,DesignWindows等。
设计时的一些通知消失了。 DesignWindows已更改为使用接口。
我尝试使用Delphi 2007进行构建,这几乎与Delphi 2005相同,而且我遇到了困难的地方:
procedure ComponentDeleted(comp: TComponent);override;
该方法已不存在,现在您必须使用IFormDesigner接口进行更改,并且必须在助手或窗口构造函数和析构函数中调用RegisterDesignNotification
和UnregisterDesignNOtification
。
除此之外我还看到至少10或20个需要修复的东西,除了重命名单元之外,许多函数已经从一个地方移动到另一个地方,并且类型已经改变,现在引用了许多实际类型的东西(TFormDesigner)通过接口(IDesigner)。
我的移植能力超出了我的能力(与IDesignSelection相关的TComponentList相关更改超出了我的深度),我认为如果有人能够做到这一点,那么它将是具有设计时工作经验的人,包括在gExperts上工作的人和其他设计时间的东西。