You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TouchWin HMI上实现数字按键输入显示及简易计算器功能?

TouchWin HMI数字输入与简易计算器实现方案

一、数字输入功能(0-9按键拼接显示)

1. 创建内部变量

打开KincoBuilder软件,进入变量管理界面,新建两个32位无符号整数类型的内部寄存器变量:

  • D100:存储拼接后的最终数字
  • (可选)D101:临时存储当前按下的数字(也可直接在按键脚本中处理)

2. 配置数字按键

在界面拖入10个按键控件,分别设置显示文本为0-9。给每个按键添加按下事件脚本,以数字4为例,脚本逻辑如下:

D100 = D100 * 10 + 4;

其余数字按键只需把脚本末尾的数字替换为对应0-9即可。如果需要限制输入位数(比如最多4位),可添加判断逻辑:

IF D100 >= 1000 THEN
    D100 = (D100 % 1000) * 10 + 4;
ELSE
    D100 = D100 * 10 + 4;
END_IF

3. 设置数据显示区域

拖入数值显示控件,绑定变量D100,设置显示格式为十进制整数,调整控件位置和字体到指定的数据显示区域。

4. 可选:添加清零按键

新增一个清零按键,按下事件脚本为:

D100 = 0;

用于快速重置输入的数字。

二、简易计算器功能实现(仅HMI内部运算)

1. 补充内部变量

在变量管理中新增以下32位无符号整数变量:

  • D102:存储第一个运算操作数
  • D103:存储运算符标记(1=加法,2=减法,3=乘法,4=除法)
  • D104:标记是否已输入运算符(0=未输入,1=已输入)

2. 配置运算按键

在界面添加+、-、×、÷四个运算按键,以及一个=等于按键。

3. 编写按键脚本

数字按键脚本调整

修改原数字按键的脚本,支持区分前后操作数:

IF D104 == 0 THEN
    D100 = D100 * 10 + X; // X替换为当前按键对应的数字0-9
ELSE
    D100 = X; // 输入运算符后,第二个操作数从头开始计数
    D104 = 0;
END_IF

运算符按键脚本(以加法为例)

D102 = D100; // 保存第一个操作数
D103 = 1; // 标记当前为加法运算
D104 = 1; // 标记已输入运算符,准备接收第二个操作数

减法、乘法、除法按键只需将D103的值分别改为2、3、4即可。

等于按键脚本

CASE D103 OF
    1: D100 = D102 + D100; // 执行加法
    2: D100 = D102 - D100; // 执行减法
    3: D100 = D102 * D100; // 执行乘法
    4: 
        IF D100 != 0 THEN 
            D100 = D102 / D100; // 执行除法,避免除零错误
        ELSE 
            D100 = 0; 
        END_IF;
END_CASE
D104 = 0; // 运算完成后,允许输入新的数字

清零按键脚本扩展

重置所有计算器相关变量:

D100 = 0;
D102 = 0;
D103 = 0;
D104 = 0;

内容的提问来源于stack exchange,提问作者Prima Marianju

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 10:33:12