| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1129 人关注过本帖
标题:VG插件的ActiveX接口
只看楼主 加入收藏
wobenbuhuai
Rank: 1
等 级:禁止访问
帖 子:13
专家分:0
注 册:2008-9-1
收藏
 问题点数:0 回复次数:1 
VG插件的ActiveX接口
ActiveX接口由接口类、接口属性、接口函数、接口事件组成

COM组件提供的接口类库和VG内部脚本类库在形式上非常相似,掌握了ActiveX接口类库就能用脚本语言编程,而学会脚本语言,也就会使用COM接口了。下面列出所有类库接口:

COM接口
 名称
 说明
 
Ivgctrl
 视图类
 COM组件本身
 
ISheet
 页面类
 一个图形文件可以包含多个页面,ActiveSheet得到当前工作页面,页面是从元件单元类继承下来的
 
IUnit
 图形单元类
 页面上的所有图形都是图形单元类
 
IText
 文字单元类
 从图形单元类继承下来
 
IShape
 形状单元类
 从图形单元类继承下来
 
ILine
 线条单元类
 从图形单元类继承下来
 
IElement
 元件单元类
 从图形单元类继承下来
 
IGroup
 单元组类
 一个页面上可以建立多个单元组,实际上就是页面图形的子集。
 

VG所提供的接口类是具有面向对像的继承关系的,其继承关系图请看9.2小节

ActiveX接口属性、函数和事件:

函数
 语法
 描述
 
AboutBox
 void=AboutBox()
 显示版本信息
 
Execute
 variant=Execute(string)
 执行脚本语句,并返回一个值(如果脚本最后有return语句的话),脚本语句可以是多行的长串。
示例:
Execute( "Print()" )打印视图当前页。
Execute( "ActiveSheetIndex=2" )页面翻到第三页(0是第一页)。
Execute( "Text1.Text='Hello'" )设置某文字单元的文字内容。
Execute( "Sheet2.Text1.Text='Hello'" )设置Sheet2页上某文字单元的内容。
Execute( "x=2;y=3;return x+y" )返回5。
Execute( "s='ABC';return s" )返回"ABC"。
 
Design
 void=Design(string)
 设计一个视图,参数指定视图的文件名。
默认视图文件名后缀“.tbl”,也可以不写
如果参数是空串"",表示设计一个新的视图文件(未命名)。
 
Run
 void=Run(string)
 运行一个视图,参数指定视图的文件名。
默认视图文件名后缀“.tbl”,也可以不写
如果参数是空串"",表示设计一个新的视图文件(未命名)。
 
AddFunction
 void=AddFunction(string, string, int, long)
 该函数属于高级应用,给VG脚本体系添加一个内部函数。利用此函数可以扩充脚本语言的能力。
第一个参数是函数的名字(32个字符以内);
第二个参数是参数类型,串中每一个字符代表一个参数类型
1-整数(Int)
2-小数(Double)
3-逻辑型(bool)
4-字符串(string)
比如有( Int,double )做为函数参数时,就用"12"表示。
第三个参数是返回值类型
如49('1'的ASC码)表示返回一个整数。
此外,如果没有返回值,用48('0'的ASC码)表示。
第四个参数是函数地址。
在C语言中,函数名就是函数地址。
在Pascal语言中,函数名前加“@”表示地址。
在Visual Basic语言中,AddressOf运算符能返回函数或者过程的地址。
 
事件
 语法
 描述
 
OnAddSheet
 void=OnAddSheet(Sheet)
 当新增一个页面后执行。Sheet是新的页面。
 
OnAddUnit
 void=OnAddUnit(Unit)
 当新增一个图形后执行。Unit是新图形对象。
 
OnClick
 void=OnClick()
 鼠标单击时执行。可以用页面的UnitAtCursor函数得到单击的图形。设计时无效。切勿在此事件里面执行Design或者Run,因为这两个函数执行时,都是先把原来画面上的图形清除,再载入新的图形。这将导致正在执行的程序被释放,出现错误,
 
OnCommand
 void=OnCommand(Unit,String)
 当执行DoCommand脚本函数时触发此事件。
 
OnDblClick
 void=OnDblClick()
 鼠标双击时执行。
 
OnDeleteSheet
 void=OnDeleteSheet(Sheet)
 当删除一个页面时执行。Sheet是要删除的页面。
 
OnDeleteUnit
 void=OnDeleteUnit(Unit)
 当删除一个图形时执行。Unit是要删除的图形对象。
 
OnError
 void=OnError(Msg)
 捕获软件错误。Msg是错误信息。
 
OnKeyDown
 void=OnKeyDown(Key)
 当按下键盘时执行。
 
OnLButtonDown
 void=OnLButtonDown( X, Y )
 鼠标左键按下时执行。X,Y表示鼠标的视图坐标。
 
OnLButtonUp
 void=OnLButtonUp( X, Y )
 鼠标左键释放时执行。X,Y表示鼠标的视图坐标。
 
OnModifyChange
 void=OnModifyChange(Modified)
 当视图被修改或存盘后执行。Modified是逻辑型值,当前视图是否已被修改。
 
OnMouseMove
 void=OnMouseMove( X, Y )
 鼠标移动时执行。X,Y表示鼠标的视图坐标。
 
OnMouseWhell
 void=OnMouseWheel(Forward)
 当滚动鼠标滚轮时执行,Forward是逻辑型,表示滚动的方向。
 
OnOrgChanged
 void=OnOrgChanged()
 视图原点位置相对屏幕窗口发生改变时执行此事件。比如滚动条位置变化。
 
OnRButtonDown
 void=OnRButtonDown( X, Y )
 鼠标右键按下时执行。X,Y表示鼠标的视图坐标。
 
OnSelectChange
 void=OnSelectChange()
 当选择组变化时执行,例如选中一个图形或者选中的图形属性发生改变等。
 
OnSheetChange
 void=OnSheetChange(Sheet)
 页面切换后执行。Sheet表示切换的页面。
 
OnZoomChange
 void=OnZoomChange(Zoom)
 视图缩放后执行。Zoom表示当前的放大率。
搜索更多相关主题的帖子: ActiveX 接口 插件 
2008-10-29 11:52
wobenbuhuai
Rank: 1
等 级:禁止访问
帖 子:13
专家分:0
注 册:2008-9-1
收藏
得分:0 
说了这么多,怎么也没个人站出来讨论讨论呀
2008-10-29 15:10
快速回复:VG插件的ActiveX接口
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041820 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved