技术论坛

 回复:WINCC slider 控件

返回主题列表
作者 主题
天之空
侠士

经验值:1070
发帖数:710
精华帖:0
楼主    2005-12-12 21:48:16
主题:WINCC slider 控件
用OCX 用了WINCC SLIDER CONTROL
控件和做连接内部变量在控件事件中的对象事件中连接内部变量
再做一个IO域和这个变量连接
运行时拖动SLIDER 的滑动块SLIDER 下的数值在变化
输入输出域中没有变化
感觉很奇怪
请指点!!??

有谁共鸣
侠圣

经验值:3112
发帖数:2153
精华帖:21
    2005-12-13 10:02:09
精华帖  主题:回复:WINCC slider 控件
这样可以用如下的VBS实现:
Dim Slider
Set Slider=ScreenItems("SliderCtrl")
HMIRuntime.Tags("tag").Write Slider.Position
把代码写在控件的“事件”下的“对象事件”下的“change”事件里便可以改变了!
其中SliderCtrl是OCX控件WINCC SLIDER CONTROL的名称,tag是wincc内部变量(我用32位无符号数!可以用整型等等数据类型)!(本人已测试过)
雄关漫道真如铁,而今迈步从头越!
有谁共鸣
侠圣

经验值:3112
发帖数:2153
精华帖:21
    2005-12-13 10:11:04
精华帖  主题:回复:WINCC slider 控件
如果你用的是WINCC6.0以下的版本!
那就用如下的C程序了:

#define GetObject GetObject

__object *pdl=NULL;
__object *pic=NULL;
__object *obj=NULL;
long pos;

pdl = __object_create("PDLRuntime");
pic=pdl->GetPicture(lpszPictureName);
obj=pic->GetObject("SliderCtrl");
pos=obj->Position;

SetTagDWord("tag",pos);

__object_delete(obj);
__object_delete(pic);
__object_delete(pdl);
雄关漫道真如铁,而今迈步从头越!
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。