- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Protel 二次开发从入门到精通
5. ClientBasic 与 Process
设计资源 /guanlilunwen/
target=_blank class=infotextkey 管理器的 C/S 架构提供了功能强大的
Server 的客户化开发,通过开发不同的 Server ,可以从底层进行 Protel 99 SE的功能扩展和延伸,这主要是因为 Protel 99 SE提供的底层开发API仅仅 支持 Delphi ,那是不是说除了 Delphi 就无法进行 Process 的调用呢?答案是 否定的,ClientBasic不单单能够支持对话框开发、COM组件调用,同样它也支 持与功能强大的 Server 进行调用。
在 Protel 99 SE 中,其中参数传递采用了参数缓存区的机制,即在
EDA/Client 建立了参数缓存区, ClientBasic 和 Server Process 都对参数缓存 区通讯,这样二者之间的不需要进行直接通讯,每次 Server Process 的调用均 需要重新初始化参数缓存区,这样保证调用独立性,减少关联性。但是对于同 一个 Server Process 的连续两次不同调用,其上下文信息无法保存,每次传递 参数均需要完整参数,这样就仅仅把 Server Process 作为了一组函数库,对于 需要上下文信息的连续调用将比较低效。缓存区机制将多个参数组成一个参数 表,将参数名称和参数值之间建立映射,通过标准的扩展函数进行参数值的获 取和设置,在下面我们会详细的介绍这些函数。
参数访问函数
根据函数的功能,可以把这些函数大致分为三类,参数输入类、参数输出 类以及过程执行类。
参数输入类
AddColorParameter
语法:AddColorParameter ParamName$, RedVal, GreenVal, BlueVal
描述:添加一个 Color 类型的数据结构的的参数到参数缓存区, Color 是一 种数据结构,其采用RGB的表示方式进行颜色的表示。
参数:
ParamName$字符串,代表了参数名称。
RedVal:整数,从0到255,代表了 RGB颜色规范中的红元素。
GreenVal :整数,从0到255,代表了 RGB颜色规范中的绿元素。
BlueVal :整数,从0到255,代表了 RGB颜色规范中的蓝元素。
注意事项 : Color 是一种扩展的数据结构,主要用来提供需要 Color 数据结 构的 Server Process 的函数调用;按照如下的形式进行 Color 参数的构造。
Color = number
其中: number = RedVal + 256*(GreenVal + 256*BlueVal) ;Color 表示
参数的名称。
例如:
AddColorParameter Color, 255,0,0
AddIntegerParameter
语法: AddIntegerParameterParamName$, value
描述:添加一个整数类型的参数到参数缓存区。
参数:
ParamName$ 类同于 AddColorParameter。
Value :整数,代表参数值。
注意事项:
整数值的范围是 -32,768 —32767。
按照如下形式参数: ValName = integer
相关命令:
AddLongIntParameter/AddSingleParameter/AddStringParameter 分别用来 处理长整型 / 单精度型 / 字符串型的参数。
参数输出类
GetColorParameter
语法: GetColorParameterParamName$, RedVal, GreenVal, BlueVal
描述: 根据参数名称,从参数缓存区获取一个 Color 类型的参数值。
参数:ParamName$/RedVar/GreenVar/BlueVar 参数定义与 AddColorParameter 雷同。
注意事项: 在调用该函数前,必须已经执行了一个能否返回一个 Color 类 型参数的 Process ,同时如果在参数缓存区中不存在与该参数名称对应的参 数,则会引发一个错误;在调用前,必须声明相关变量。
GetIntegerParameter
语法: GetIntegerParameterParamName$, IntVar
描述: 根据参数名称,从参数缓存区获取一个整型类型的参数值。
参数:ParamName$/lnVar:定义与 AddlntegerParameter 雷同。
相关命令:
GetLonglntParameter/GetSingleParameter/GetStringParame
文档评论(0)