控件开发中的设计期包和运行期包

控件中如果自定义了属性编辑器,需要分成设计期包和运行期包。实际上是同一份代码,分别命名为两个bpk工程。我的设计包叫ButtonGaphic.bpk,而运行期包命名为ToolButton.bpk。在编译这两个包时,也要注意Options中的设置。如下图:

分别编译这两个bpk后,会在C++builder相关目录中产生以bpk名字命名的文件,如ButtonGaphic.bpl、ButtonGaphic.bpi、ButtonGaphic.lib和ToolButton.bpl、ToolButton.bpi、ToolButton.lib
还有几点要说明:
1、在编译设计期包的时候,要在Requires中加入designide.bpi。
2、在编译运行期包的时候,不要包含#include "editproperty.hpp"文件。(本控件中定义了自己的属性编辑器,从TPropertyEditor中继承了一个类TMyPropertyEditor,单独放在editproperty.hpp文件中)
3、在运行期包中,不要注册属性编辑器。即屏蔽RegisterPropertyEditor代码。
4、在编译应用程序时,在Build with runtime packages中加入运行时的ToolButton包,即ToolButton.bpi,ToolButton.lib,并去掉设计时的包信息,如ButtonGraphic.bpi,ButtonGraphic.lib

这两个bpl包的名字名字虽然不同,但是因为bpl中控件类是一样的,所以应用程序发行时,能正常运行。

如果你选择了图中的第三个选项designtime and runtime,那么不需要分成两个包设计。但是在编译应用程序的时候,要加designide.bpi包,并且不能带包编译。即Builde with runtime packages的勾不能去掉。程序在发行时也要带上designide.bpl文件一起。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值