在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
(一)前言 本文将用一个例子描述组件开发与属性编辑器。例子(TdsWaitDialogEx)是一个可视组件,调用其show方法后显示一个Dialog,其中包含一个TAnimate,两个提示信息(即TLabel),一个进度条(TGauge)。 枚举属性:DialogStyle,AVIPosition (二)组件包dsDlgPack.dpk 为了便于发布、安装等,要用到要组件包.dpk。 在Delphi6以后的版本中(我不知D5以前的版本怎样),有若干文件Delphi没有发布,如Proxies。 安装组件时若用到这些文件,可绕过这些文件而用包含这些文件的包。 本例属性编辑器用到DesignEditors文件,而DesignEditors中需要Proxies文件,因此在发布此组件 的包(.dpk)中包含designide,解决了Proxies不存在的问题,这样装组件就会成功 package dsDlgPack; ... requires contains end. (三)组件注册文件dsDlgWaitExReg.pas 问:为什么要多用这样一个文件? 因为:如果dsDlgWaitExReg.pas中的代码合并到dsDlgWaitEx.pas中,虽然dsDlgPack.dpk中包含designide解决了安装组件时Proxies不存在的问题,但是在应用程序调用此组件时仍出Proxies不存在的问题,因为DesignEditors中需要用到Proxies文件;因此象下面这段代码单独形成文件,应用程序调用此组件是不需用到dsDlgWaitExReg.pas,可绕过Proxies不存在问题。 unit dsDlgWaitExReg; interface uses Classes, Dialogs, Forms, dsDlgWaitEx, DesignIntf, DesignEditors ; type TdsAVIFileNameProperty = class(TStringProperty) //属性编辑器要用到DesignEditors文件 procedure Register; implementation procedure Register; { TdsAVIFileNameProperty } procedure TdsAVIFileNameProperty.Edit; end. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论