Wincc 6.0图形按钮弹出询问框的问题

请问各位大侠:
      本人在WINCC界面/对象选项板/标准/窗口对象里面添加了一个圆形按钮,需要按鼠标动左键动作时,弹出一个询问框“你确认要开机吗?”,选择“是”,将变量"NewTag"设定为1,选择“否”,不对变量"NewTag"进行设定。
 现在我的问题是:WINCC激活后,第一次操作在该按钮时,询问框会跳到窗口下方,如果画面是全屏、最大化的话,该询问框根本看不到,请问各位大侠,这是什么原因啊?
 我的C脚本如下:

 HWND hwnd = NULL;
 int iRet;
 hwnd = FindWindow(NULL,"wincc c-course");
 iRet = MessageBox(hwnd,"你确认要开机吗?","询问框", MB_YESNO| MB_ICONQUESTION| MB_APPLMODAL);
 printf("\r\nExample 2\r\n");
 if  (iRet  == IDYES)
 {
    printf("user selected YES But ton \r\n ");
   SetTagBit("NewTag",1); //Return-Type: BOOL 

 }
 else// if  (iRet  == IDNO)
 {
  printf("user selected NO But ton \r\n ");

 

 }
 }
 

最佳答案

句柄获取错了!
 hwnd = FindWindow(NULL,"wincc c-course");
 改成
 hwnd = FindWindow(NULL,"WinCC-Runtime - ");  //运行语言为英文
 hwnd = FindWindow(NULL,"WinCC-运行系统 - ");  //运行语言为中文

 通过设置父窗口句柄可是MessageBox为模式对话框。
 ----------------------------
 另外,还可以为MessageBox添加参数MB_SYSTEMMODAL使其置顶:
 iRet = MessageBox(NULL,"你确认要开机吗?","询问框", MB_YESNO|MB_ICONQUESTION|MB_SETFOREGROUND|MB_SYSTEMMODAL);
 -----------------------------
 楼主可以对比一下这两种方法的区别。

提问者对于答案的评价:
谢谢你,通过了。

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

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

相关推荐

  • WINCC6.0光盘复制到计算机的硬盘上

    我有一张WINCC6.0的正版的光盘想复制到计算机的硬盘上.可是在复制的过程中总是有些文件不能复制.提示需要跳过.我原来也复制过5.1但那是刻录的.是不是正版的都不能完全复制.请问…

    SIMATIC WinCC 2019年6月11日
  • wincc 变量名称可以使用中文吗?

    这里的名称我看到别人使用的都是英语我这里用中文可以吗? 图片说明:    最佳答案 可以使用你已经建立了 用PLC 和wincc模拟下&nb…

    2021年7月5日
  • HMI显示字母

    如果我收到一个INT寄存器,但是我要使HMI上根据收到的INT值分别显示出ABCD等字母,要如何操作。另外如果是要根据收到的INT寄存器输出别的数字要如何操作。用I/O域没找到如何…

    2021年7月5日
  • WINCC和S7-300通讯哪种方式好?

    过去我用WINCC和S7-300通讯,都是在工控机上插入一块CP5611。有网友说,用工控机的RJ45插口,在S7-300的后面装一块CP343更好。请问,如果不考虑成本,单从通讯…

    SIMATIC WinCC 2019年6月11日
  • WINCC与plc tcp/ip连接

    公司有台Wincc电脑版本7.0与400PLC通过named connection连接。然后我现在想改为tcp/ip连接  ,已经通过变量的导出更改了…

    SIMATIC WinCC 2020年11月1日
  • 关于计时器的用法

    跟你请教个问题,现在我这想在程序中做一个计时器,就是某一台设备启动后开始计时,设备停止后终止计时,最后把这台设备的运行时间在wincc中显示出来,在程序中应该怎样做呢?各位大神们帮…

    SIMATIC WinCC 2021年7月5日
  • SIMATIC WINCC 中访问数据库的VBS指令查询多个变量记录

    指令格式“TAG:R,(ValueID_1;ValueID_2),<TimeBegin>,<TimeEnd>”如果我要计算ValueID_1在<Tim…

    2021年7月5日
  • 数据的显示

    我有一组内部变量tag0至tag100,想用wincc自带的 winnc function trend control来画线,每个点的横纵坐…

    2020年11月1日
  • wincc7.3这功能怎么实现呢 求大神告知

    当一个变量发生正跳沿变化时候 把当前系统时间记录到一个变量内 怎么实现 方法有几种 求大神解惑答疑 谢谢 问题补充:具体点 最佳答…

    SIMATIC WinCC 2017年6月24日
  • WinCC6.2中用户编号

    如何在WinCC中使用用户号和密码登陆? 最佳答案 请参考: 当使用 SIMATIC Logon ( 从 V1.3&nb…

    SIMATIC WinCC 2019年6月11日