文章目录
前言
在某些特定场景下,需要通过电脑键盘控制上位机界面上按钮按下或释放,本文给出了基于C脚本的解决方案。
一、创建Wincc画面并添加变量及按钮
为方便演示,本案例在内部变量中添加一个变量,如下图所示:
然后在画面上添加一个按钮,为了方便观察按下键盘按键后,按钮是否触发动作,可关联颜色变量,当按钮置位时显示绿色,复位时显示灰色;
二、在"事件"-"键盘"下,编写"按下"和"释放"的C脚本
假设按下F1,按钮置位,释放F1,按钮复位。
"按下"代码如下:
c
#include "apdefap.h"
void OnKeyDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nChar, UINT nRepCnt, UINT nFlags)
{
if (nChar==112) SetTagBit("按钮",1);
}
"释放"代码如下:
c
#include "apdefap.h"
void OnKeyUp(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nChar, UINT nRepCnt, UINT nFlags)
{
if (nChar==112) SetTagBit("按钮",0);
}
其中,"112"表示F1对应的ASCII字符。
键盘按键与 ASCII 字符集对照表