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

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: xpl

LUA_CAN相关的问题

[复制链接]

2

主题

27

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2023-7-13 18:15:33 | 显示全部楼层
If后要接end 发表于 2023-6-27 16:48
on_systick()这个回调也是1s执行一次

需求是实时显示 CAN总线里信息
回复

使用道具 举报

2

主题

1253

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12541
发表于 2023-7-14 08:53:59 | 显示全部楼层
xpl 发表于 2023-7-13 17:32
请教个问题   
比如 1号2号文本控件已经有文本信息了      
自动跳转到3号4号文本控件

你用个变量缓存当前指向的文本控件,每次填写一个控件,数值加加,数值达到上限后在重新还原为初始值,一直循环
Easy doesn't enter into Grown-up life
成年人的生活里面没有“容易”二字
回复

使用道具 举报

2

主题

1253

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12541
发表于 2023-7-14 08:56:25 | 显示全部楼层
xpl 发表于 2023-7-13 17:49
record_insert (screen,control,position,record)
在指定位置插入一条记录

你是要显示到数据记录控件里面,可以用record_add末尾添加的方式。如果表格是顺序显示,也可以加上record_setoffset来使表格偏移到最新的那条数据;逆序排序可以不用record_setoffset
Easy doesn't enter into Grown-up life
成年人的生活里面没有“容易”二字
回复

使用道具 举报

2

主题

27

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2023-7-15 00:09:30 | 显示全部楼层
If后要接end 发表于 2023-7-14 08:56
你是要显示到数据记录控件里面,可以用record_add末尾添加的方式。如果表格是顺序显示,也可以加上record ...

好的   非常感谢大佬
回复

使用道具 举报

2

主题

27

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2023-7-15 18:06:10 | 显示全部楼层
If后要接end 发表于 2023-7-14 08:56
你是要显示到数据记录控件里面,可以用record_add末尾添加的方式。如果表格是顺序显示,也可以加上record ...

C:\Users\xpl\Desktop\1.jpg



整一个控件是4   我该如何把数据 分开显示    现在只显示id  不显示数据  而且输出是10进制的
还是我创建俩控件
回复

使用道具 举报

2

主题

27

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2023-7-15 18:13:27 | 显示全部楼层
If后要接end 发表于 2023-7-14 08:56
你是要显示到数据记录控件里面,可以用record_add末尾添加的方式。如果表格是顺序显示,也可以加上record ...

还是记录控件好用   文本控件直接不出数据

目前是这样的  我创建了 一个数据记录控件

2个子选项(也就是2列)
我无法把数据填写到第二列  数据始终在第一列滚动   还有就是16进制自动就转换为10进制了

上传不了图片 很悲伤
回复

使用道具 举报

2

主题

27

帖子

126

积分

注册会员

Rank: 2

积分
126
 楼主| 发表于 2023-7-15 18:21:00 | 显示全部楼层
xpl 发表于 2023-7-15 00:09
好的   非常感谢大佬

通用表格  
事件顺序
剧中对其
子项目:2
子项宽度 26,50
显示记录 5条
record_add(screen,control,record)  这个我无法把两个数组填写到第二列   数据默认出现在第一列

record_setoffset(screen,control,offset)  offset 需要我填写吗
回复

使用道具 举报

2

主题

1253

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12541
发表于 2023-7-17 16:49:11 | 显示全部楼层
xpl 发表于 2023-7-15 18:06
整一个控件是4   我该如何把数据 分开显示    现在只显示id  不显示数据  而且输出是10进制的
还是 ...

一个文本控件显示多个数据,可能需要在每个数据之间添加分隔符来作区分,美观程度不如用数据记录控件来的直观
Easy doesn't enter into Grown-up life
成年人的生活里面没有“容易”二字
回复

使用道具 举报

2

主题

1253

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12541
发表于 2023-7-17 16:55:04 | 显示全部楼层
本帖最后由 If后要接end 于 2023-7-17 16:59 编辑
xpl 发表于 2023-7-15 18:21
通用表格  
事件顺序
剧中对其

数据记录控件有两列,只更新某一列的数据,你需要用个for循环,将每行的字符串内容读取出来,然后对这个字符串内容中的“;”做切割(具体的分割函数我贴在下一楼)。
调用分割函数会返回一个索引从1开始的字符串数组,其中索引1的数据无需改动,假设为a,需要更新的数据为b,如果需要转换数据类型,需要先进行数据转换,例如10进制转16进制: c = string.format("%02x", b)。
最后将数据修改到对应的行record_modify(画面ID, 控件ID, 索引, a .. ";" .. c)。
Easy doesn't enter into Grown-up life
成年人的生活里面没有“容易”二字
回复

使用道具 举报

2

主题

1253

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12541
发表于 2023-7-17 16:55:37 | 显示全部楼层
--split string
--@str :target string
--@pat :split token
--@return : tb
function mysplit(str, pat)

    local t = {}
    local last_end = 0
    --public.debug(1, 'public.split('..str..', '..pat..')')
    local s, e = string.find(str, pat, 1)    -- 第一个分割号的位置
   
    while s
    do
        -- 找出分割符的前的参数
        table.insert(t, string.sub(str, last_end + 1, last_end + s - last_end - 1))

        last_end = e
        s, e = string.find(str, pat, last_end + 1)

    end

    if last_end <= #str and  last_end ~= 0
    then
        cap = string.sub(str, last_end + 1)
        table.insert(t, cap)
    end

    return t
end
Easy doesn't enter into Grown-up life
成年人的生活里面没有“容易”二字
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-29 05:04 , Processed in 0.053614 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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