积木首页 - 学院 - 软件测试 - 技术百科 - 问答 - 黄页 - 手册 - 站长工具 - 社区
登录 | 注册
    全站
技术百科 >> Delphi 6.0

Delphi 6.0

  Delphi 6.0中属性编辑器的解决方案
  Delphi中用户可以自己声明属性编辑器在程序设计期间对第三方控件进行设计,对属性编辑器的声明可以在注册控件的时候通过RegisterComponentEditor过程进行定义,具体为:
  procedure RegisterComponentEditor(ComponentClass: TComponentClass; ComponentEditor: TComponentEditorClass);
  当然,用户在注册前要定义自己的属性编辑器,下面是一个例子:
  TOutlookBarEditor = class(TComponentEditor)
  function GetVerb(Index: Integer): string; override;
  function GetVerbCount: Integer; override ;
  procedure Edit; override;
  procedure ExecuteVerb(Index: Integer); override;
  end;
  其中最关键的部分在于对RegisterComponentEditor的引用。
  在Delphi5.0中,可以直接将$(DELPHI)\Source\ToolsAPI目录下的DsgnIntf.pas文件拷贝到控件的设计目录下或者拷贝到$(DELPHI)\Lib目录即可。
  在Delphi6.0中,Delphi将文件分解成DesignIntf.pas和DesignEditors.pas两个文件,所以引用时要将$(DELPHI)\Source\ToolsAPI目录下的DesignIntf.pas和DesignEditors.pas两个文件拷贝到控件的设计目录下或者拷贝到$(DELPHI)\Lib目录。
  当然,如果你的Delphi Package的搜索路径或者Delphi IDE的搜索路径可以搜索到$(DELPHI)\Source\ToolsAPI目录就省去此麻烦。
  但是,在Delphi 6.0中,如果就此编译,会出现找不到Proxies.dcu文件的问题。因为Proxies被编译了,在Delphi的目录中根本就找不到此相关文件,它已经被编译到designide.dcp文件中,解决方案很简单,就是在你的Package中引用designide.dcp文件即可,具体作法是:
  Project->View Source->在requires部分加入对designide的引用即可。
  由于此部分文件只是在设计期间才有效,所以你的Package在设计时就要注意:
  不要在运行期间将在进行期间使用的文件加入对DesignIntf.pas和DesignEditors.pas两个文件的引用,否则依然会出现找不到Proxies.dcu文件的问题,要将文件脱离!
  当然,如果你的Package要在Delphi 5.0及Delphi6.0下同时能运行,那就要下点功夫通过编辑器的版本进行控制,Delphi 6.0的编辑器版本是VER140,Delphi 5.0的编辑器版本是VER130,下面是本人的一个真实的引用文件:
  uses
  Classes, {$IFDEF VER140}DesignIntf, DesignEditors{$ELSE}DsgnIntf{$ENDIF};
  Package部分由于版本不同而对不同的版本要进行不同的设计,再此就不叙述了!
  其它补记:由于Delphi 5.0和Delphi 6.0对过程及参数的定义区域不同而出现错误,所以在编写两个版本的Package时一定要注意引用虚函数时出现的问题。例如对TControl控件的SetAutoSize(Value: Boolean)过程的引用:
  在Delphi 5.0中定义为:
  private
  procedure SetAutoSize(Value: Boolean);
  而在Delphi 6.0中定义为:
  protected
  procedure SetAutoSize(Value: Boolean); virtual;
  此时的定义要根据自己的实际情况定义了,可不能随便定义了!
  

相关文章:
硬盘毁了,资料荡然无存,哪位兄弟分享下Delphi 6.0 2CD版本 万分感谢

hear that 为啥要6.0呢? 我有很多...

来自:群组 - 最后更新于:2009-05-27

哪里有Delphi 6的ISO文件

不全的东东,Delphi Distiller v1.73 这个(117MB) 这里有Borland Delphi 6.0企业完整光版的Delphi Distiller v1.73 已经有delphi安装。不仅有delphi 6, 还有最新的delphi 2010和元老级的delphi 5,很速度有点慢... Delphi Distiller v1.73 下载...

来自:群组 - 最后更新于:2009-08-27

#0'1'#0'3'#0'6'#0'6' 这样子的STRING 怎么去掉 #0啊 急

怎么去掉 #0啊 急 StringReplace Delphi(Pascal) code procedure : integer; begin a := #0'1'#0'3'#0'6'#0'6'; for I := 0 to length(AStringReplace这个函数 Delphi(Pascal) code procedure TForm1.BitBtn1Click...

来自:群组 - 最后更新于:2009-08-23

再次问关于Delphi 6 的TIdTCPClient超时问题。是delphi 6!!!

环境:delphi 6.0 TIdTCPClient 发送数据了。 代码如下: Delphi(Pascal) code while True do(True,1000*iInterval,True,nil) = 0 then exit; ReceiveTCP.ReadBuffer(IAPDUPack包程序。 注意: Delphi(Pascal) code while True do...

来自:群组 - 最后更新于:2009-08-24

delphi 2009

目后,如何从delphi ide 首页删除\Software\Borland\Delphi\6.0\Closed Files HKEY_CURRENT_USER\Software\Borland\Delphi\6.0\Closed, HKEY_CURRENT_USER\Software\Borland\Delphi\6.0\History Lists to rouqing 我...

来自:群组 - 最后更新于:2009-05-28

请问现在VC++ 6.0 DELPHI还有前途吗

吗? Delphi不清楚,但放弃vc 6.0吧,这的都用c VC 6.0现在用的多能还强大吗 delphi其实是不错的程序 怀念delphi,嗨…… vs2005,2008,2010一人觉得还是Delphi好学些。 工具...

来自:社区 - 最后更新于:2010-07-15

DELPHI超级Internet控件集--INDY

有没有用DELPHI开发Internet程序 DELPHI、C++ BUIDER和最新的Kylix(LINUX里的DELPHI版本是8.0版,最新BETA版8.1版。INDY8.0支持DELPHI 4、DELPHI 5、C++BUIDER了。而且据说DELPHI 6.0将会把INDY作)里面的borland.public.delphi.internet.winsock和borland.public...

来自:学院 - 最后更新于:2003-04-21

vc++ 6.0 mfc 基础教程

vc++ 6.0 mfc 基础教程 都是SB教VC6.0。学校教的东经出了.net 2008, Delphi 2009 落后呀,惭用功能,就用Delphi来写好了:比前台界面 用Delphi好了.5花8,效率更好. 而Delphi的VCL及大量...

来自:群组 - 最后更新于:2009-04-17

为什么用Delphi访问Java编写的WebService会出现“无效句柄”?

下能用http://127.0.0.1/test.jws?wsdl访),即c=a+b; 用Delphi 6.0,导入wsdl后生解决? 换成Delphi 7.0就正常了! 得...

来自:群组 - 最后更新于:2009-08-12

Delphi程序對BARCODE指令的操作

裝的是delphi 6.0,想請教下Delphi程序對...

来自:群组 - 最后更新于:2009-08-28

本词条对我有帮助0

积木知识库中的词条内容仅供参考,如果您需要解决实际问题,建议您咨询相关领域专业人士

TOP
如果您认为本词条还需进一步完善,欢迎您也来参与编辑词条    让我们共同来完善IT领域的百科全书

PHP: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码 - 正则表达式 - 热门脚本语言: DOS命令 - vbs - CSS/HTML - python - perl - ruby - shell编程 - Powershell

JS: node.js - JS基础 - extjs - jQuery - JavaScript技巧

网址导航成语大全积木 TinyMCE 服务邮箱: Gimoohr(#)gmail.com
Copyright © 2008 Gimoo.Net  京ICP备05050695号