广州大彩串口屏论坛_大彩开发者交流论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7429|回复: 4

请教文本控件的递增变量如何递增小数

[复制链接]

24

主题

44

帖子

206

积分

中级会员

Rank: 3Rank: 3

积分
206
发表于 2020-6-28 21:56:59 | 显示全部楼层 |阅读模式
本帖最后由 南妖 于 2020-6-28 22:00 编辑

vt软件文本控件的递增变量是以整数为单位,现在需要实现点击按键实现以0.01为单位的递增递减,应该怎么实现呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

207

帖子

6873

积分

论坛元老

Rank: 8Rank: 8

积分
6873
发表于 2020-6-29 08:34:27 | 显示全部楼层
物联型、M、F系列(固件支持脚本的)在脚本实现,在on_control_notify函数里面,判断+ - 按钮的按下状态,获取文本值,进行+0.01或-0.01的运算。

同理,如果不支持脚本运算,那么在主控单片机收到判断+ - 按钮的指令,主控发指令获取文本控件值,单片机经过逻辑运算,在回显设置文本值
VisualHMI 人机界面 & VisualTFT 串口屏
回复

使用道具 举报

24

主题

44

帖子

206

积分

中级会员

Rank: 3Rank: 3

积分
206
 楼主| 发表于 2020-7-1 23:24:38 | 显示全部楼层
Cp`sir 发表于 2020-6-29 08:34
物联型、M、F系列(固件支持脚本的)在脚本实现,在on_control_notify函数里面,判断+ - 按钮的按下状态, ...

我在demo程序上测试,点击加减只能在0-0.1变化,无法累加,demo程序是使用F Project_DEMO_800480_70_NAND
--控制控件
function on_control_notify(screen,control,value)
    if screen==5                                                             --进度条
    then
        if control==3 and value > 0                                                       --控件‘减’
        then
                    value=get_value(5,1)                             
            if value>0
            then
            value=value-0.1                                                 --由原来的5改成0.1进行测试
            end
             if value<0
            then
            value=0
            end
                     set_value(5,1,value)                                                 --设置数值
            set_value(5,2,value)        
         end
         if control==4 and value > 0                                                      --控件‘加’
         then
                  value=get_value(5,1)
             if value<100
             then
             value=value+0.1                                                          --由原来的5改成0.1进行测试
             end
             if value>100
             then
             value=100
             end
                           set_value(5,1,value)                                                 --设置数值
             set_value(5,2,value)
        end
            if control==1                                                        --直接点击进度条
            then
            value=value
                     set_value(5,1,value)                                                 --设置数值
            set_value(5,2,value)        
            end
    end
回复

使用道具 举报

24

主题

44

帖子

206

积分

中级会员

Rank: 3Rank: 3

积分
206
 楼主| 发表于 2020-7-1 23:40:01 | 显示全部楼层
搞定此问题,之前测试不成的原因是不知为何获取进度条的数值不是小数,现改为label框暂时可以小数加减。现在另外一个问题是我点击完了加减之后如何主动的将这个数发送给单片机呢?
回复

使用道具 举报

0

主题

207

帖子

6873

积分

论坛元老

Rank: 8Rank: 8

积分
6873
发表于 2020-7-2 08:41:31 | 显示全部楼层
南妖 发表于 2020-7-1 23:40
搞定此问题,之前测试不成的原因是不知为何获取进度条的数值不是小数,现改为label框暂时可以小数加减。现 ...

文本用get_text获取,发送给单片机参考教程http://www.gz-dc.com/uploads/fil ... %8C%87%E4%BB%A4.rar
VisualHMI 人机界面 & VisualTFT 串口屏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|广州大彩串口屏论坛_大彩开发者交流论坛

GMT+8, 2024-5-17 08:29 , Processed in 0.055754 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表