在WinCC 中如何选择需要切换的画面

请教各位高手,在WinCC 中,我需要实现的功能是当第一次点击一个按钮时,切换到画面1,当第二次点击这个按钮是,调出另一张画面2(菜单功能),此时画面1还存在,我的做法是在按钮的C脚本中写入如下代码:
 int flag1;
 if(flag1==1)
 {
 SetVisible("Main.pdl","画面2",1);
 }
 else 
 {
 flag1=1;
 SetPropChar(lpszPictureName,"MID-Main","PictureName","画面1");
 }
 在执行以上代码时,不论点多少次这个按钮,都只调出画面1,请问高手高如何做才能实现我要的功能,谢谢!

问题补充:
我按照1楼的做法做了,仍然不能实现我要的功能,而且发现问题的根本原因在于bflag1 无法置1,因为我手动给bflag1 置1后就可以实现我要的功能,请各位专家指点一下,谢谢!

最佳答案

flag的作用域仅限于本函数,而且没有初始化,其值未知。在脚本不做大改动的情况下,增加一个BOOL内部变量bFlag1:

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 你的要求不全,比如点击第三次、第四次的情况如何等等,脚本只能如此了,另外变量名是区分大小写的,特别注意。

  if (GetTagBit("bFlag1"))
  {
         SetVisible("Main.pdl","画面2",1);
  }
  else 
  {
  SetTagBit("bFlag1",TRUE);
  SetPropChar(lpszPictureName,"MID-Main","PictureName","画面1");
  }
  

 

提问者对于答案的评价:
谢谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc274478.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午10:47
下一篇 2019年6月11日 上午10:47

相关推荐

  • wincc项目的打开

    原先正常,就这几天没有用,打开原先的项目或新建项目都是这个提示。有遇到这种情况的没有? 问题补充:忘记上传图片了 图片说明:    最佳答案 那就是软件出问题了…

    2021年7月5日
  • 怎样将结构变量声明放到头文件中?

    怎样将结构变量声明放到头文件中?希望能说的具体点,谢谢! 问题补充:#pragma option(mbcs) 这段代码是什么意思? 最佳答案 将结构变量声明放到…

    SIMATIC WinCC 2019年6月11日
  • WinCC画面动态属性编辑

    要在画面中改变指示灯颜色,编辑其动态属性,填入二进制变量,总出现错误,点击“详细资料”,是表达式错误,但在另一台计算机上编辑,无此现象。怀疑Wincc软件问题,重装WinCC后,问…

    SIMATIC WinCC 2018年12月7日
  • wincc flexible2008与wincc组态问题

    我有个项目包括一个MP277和一台6.2版本的WINCC 要求是所有的操作在触摸屏上进行,所有的记录在WINCC上进行,上位机上只能查看历史数据,显示动态过程,甲方要求在…

    SIMATIC WinCC 2019年6月11日
  • 如何限制键盘的输入值

    我想限制键盘的输入值,假如输入值低于最低限或者高于最高限,如何让其保持原有的数值不变呢? 最佳答案 可以先把键盘输入值保存在数据块DB中。例如键盘输入值为DB1.DBW0,保存在D…

    2017年6月18日
  • wincc中变量问题

    我wincc变量中突然多了 s7$程序(1)#rawevent,和s7$程序(1)#rawarchiv 中两个变量,我没有建立过,我想删除它,删不掉,说是只读的…

    SIMATIC WinCC 2019年6月11日
  • WinCC连接Oracle数据库(VB)

    现在想用WinCC和Oracle数据库连接通信。连接已经没有问题,简单的读写也没有问题。 我得代码如下: strConnectionString =&…

    SIMATIC WinCC 2019年6月11日
  • WINCC图形界面显示不一致

    300PLC通过交换机连接至控制室交换机,控制室交换机分别连接2台上位机,2台上位机中WINCC都是一样的,但是有时2两台上位机同一界面同一阀门开关显示不一致,其他阀门显示均一致,…

    SIMATIC WinCC 2017年5月29日
  • 只装屏软件可以吗

    电脑不给力,想V13的只装屏部分的软件,装程控器部分的,这样可以吗? 最佳答案 可以的。建议装step7 professional,安装的时候自动装上了winCC&nbs…

    SIMATIC WinCC 2017年6月11日
  • SMART 1000IE触摸屏通讯网络组态

    有个项目用到了一个SMART 1000IE屏,一个S7-200,  一个200SAMRT,用 SMART 1000IE的屏,组态完…

    SIMATIC WinCC 2020年11月1日