如何在 InTouch 中实现超大窗口的自由滚动显示 点击:2278 | 回复:6



如火

    
  • 精华:172帖
  • 求助:0帖
  • 帖子:803帖 | 5249回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2005-12-02 10:24:00
楼主
如何在 InTouch 中实现超过显示器屏幕尺寸的大窗口的自由滚动显示 


概要介绍 

       目前在 InTouch的画面制作中,有很多用户会制作出超过显示器尺寸的大窗口。例如:目前大多数的显示器分辨率为1024X768,但有时用户会提出一些超过该尺寸的画面要求,比如1400X900等。这通常会因为以下几种原因:用户需要一幅大尺寸整体工厂流程总览;比较复杂的传输或流程系统;用户的特殊要求等。InTouch的WindowMaker是支持这样的画面的,但问题在于如何在WindowViewer中实现该类窗口的自由滚动显示。大家知道,Wonderware公司除了在InTouch的CD中提供的标准函数之外,还在多年的实践中增加了不少功能的函数,这些函数在Wonderware公司提供的KBCD中可以找到。本文正是利用KBCD提供的函数来实现InTouch的超大窗口的自由滚动显示功能。 

函数介绍 :为了满足用户自由移动窗口的需要,在 Wonderware 公司的 KBCD 中提供 MoveWindow 函数。 

调用方法: MoveWindow( WindowName , Left , Top , Width , Height ); 

MoveWindow 函数将窗口名为 WindowName 的窗口的作上角移动到 ( Left, Top ) 坐标,并将窗口大小改变为宽度为 Width ,高度为 Height 。 

具体实现方法 

    1)制作好你所需要的大窗口 WindowName ,并假定窗口大小为( Width, Height )。 
    2)设计你所需要的窗口滚动方式,比如水平滚动条和垂直滚动条控制。 
    3)实现 :仅举例说明水平移动的实现方式,其它可类推。 

    自己制作一滚动条,或者使用 Microsoft Visual Basic 的滚动条控件,其滚动条的宽度大小制作为 (1024/Width)*1024 。该滚动条设计为单个窗口并位于屏幕最下端。 

    定义整数型标记 Horiz 和 Vert ,来表示水平位置和垂直位置。定义水平滚动条滚动位置对应 Horiz ,滚动的范围(以左端为参考位置)为 0- ( 1024- 滚动条宽度),对应标记值范围 0 – (1024 - Width) 。 

    数据改变脚本加入 Horiz: MoveWindow(WindowName, Horiz, Vert, Width, Height) 。 

    当水平滚动条滚动时,该窗口将实现水平移动。 

这只是实现窗口滚动的一种方式。你可以利用这些函数以及其他一些函数,根据具体的用户要求来按照用户所需要的方式进行具体的实现。 




deng_lp

  • 精华:5帖
  • 求助:0帖
  • 帖子:65帖 | 2669回
  • 年度积分:0
  • 历史总积分:2876
  • 注册:2001年6月19日
发表于:2005-12-02 11:41:00
1楼
还有另外一种方法。
修改intouch.ini和相应的窗体文件,可作到不变形不移位的改变窗体大小。
需要写程序。

帮主

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:109
  • 注册:2004年10月28日
发表于:2005-12-11 23:38:00
2楼
好帖子,顶!

Lucky Boy

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 27回
  • 年度积分:0
  • 历史总积分:194
  • 注册:2005年9月22日
发表于:2005-12-12 10:05:00
3楼
邓工,有没有程序  ,给我发一个!gailei0815@163.com

Lucky Boy

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 27回
  • 年度积分:0
  • 历史总积分:194
  • 注册:2005年9月22日
发表于:2005-12-12 15:59:00
4楼

lingdi

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 10回
  • 年度积分:0
  • 历史总积分:6
  • 注册:2007年4月04日
发表于:2007-04-25 10:45:00
5楼
这些函数怎么调用?我是新手,给我也发一个相关的程序好吗?

lingdi

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 10回
  • 年度积分:0
  • 历史总积分:6
  • 注册:2007年4月04日
发表于:2007-04-25 10:47:00
6楼
panlingdi2008@163.com这是我的邮箱,谢谢了!!!

热门招聘
相关主题

官方公众号

智造工程师