DsgIntf.pas 问题(100分)

  • 主题发起人 主题发起人 delphifaq
  • 开始时间 开始时间
D

delphifaq

Unregistered / Unconfirmed
GUEST, unregistred user!
在原先控件中用到dsgintf.pas 到d6后,已经没有此文件,拷贝先前版本的也不能用,
请问D6用什么代替此文件?/
 
designintf.pas
 
http://www.delphibbs.com/delphibbs/dispq.asp?LID=1256069

也许需要将所有的工程关闭。然后:
点击菜单,选择:components/install packages
将Build with runtime packages选中,
(可能还需要加入路径:C:/Program Files/Borland/Delphi6/Lib/Debug)
然后再装你的控件,应该OK了吧,不行的话,给我个MAIL吧!
keepyea@163.com
 
dsgintf.pas在d6中改为DesignIntf.pas,
但与之有关的DesignEditors.pas中调用的Proxies缺少,不知怎么解决。
 
我也遇到此问题,没关系,把他删去就形了!
 
照 keepyea 说的做把,他比我先说了
点击菜单,选择:components/install packages
将Build with runtime packages选中
重新编译就可以了

 
D5下开发的大多数控件都是从TComponentEditor派生的
D5中该类的声明在DsgnIntf中
而在D6中对DsgnIntf作了很多改进,原来DsgnIntf单元所
声明的类分散到多个单元中:DesignIntf、DesignEditors、Design*…………(源代码
位于Source/ToolsAPI中,你可以去对比一下)
所以,对于在D5开发的从TComponentEditor派生的控件,要到D6下使用,需要经过以下
几个步骤:
1、添加 lib/designide.dcp到控件的dpk文件的requires部分
2、在控件的pas源文件中凡是uses DsgnIntf的地方改成uses DesignIntf, DesignEdit
ors
为保证控件可以同时在D5和D6中使用,可以采用条件编译:
uses
{$IFDEF VER140}
DesignIntf, DesignEditors,
{$ELSE}
DsgnIntf,
{$ENDIF}
经过了这两步,控件应该就可以安装了
呵呵,D6比起D5的确是大变样了,看样子我们还得多
 
后退
顶部