应用笔记 | TSMaster——图形编辑面板功能模块简介

图形编辑面板
tsmaster 图形编辑面板让用户能够开发自己的图形窗口,用于处理报文的收发,信号解析显示等功能。
一 工具栏
1. 模式选择按钮,主要包含如下模式:
1)按下状态时候,当前 panel 处于编辑模式下,用户可以增加删除控件,编辑控件属性的。
2)弹起状态,当前 panel 处于测试运行模式,显示的是该面板实际运行时的状态,用户不可进行编辑。
3)灰色状态,当前 panel 处于运行状态。意味着当前 tsmaster 处于设备连接运行状态。如果用户想重新编辑界面,必须断开 tsmaster 连接,才可以进入编辑状态。
2. 层叠控制
当出现控件层叠情况时,把控件移动到前面和把控件移动到后面。
3. 对齐控件
控件对齐分为两步:
1)首先选择需要对齐的多个控件:按住 ctrl 键,鼠标点击多个按钮,则选中多个控件。如下所示:
2)选择顶部菜单栏的对齐按钮,如下所示:
对齐选项有:
➢ align left:左对齐
➢ align right:右对齐
➢ align top:上对齐
➢ align buttom:下对齐
➢ center horizontally:以中间模块为准水平对齐
➢ center vertically:以中间模块为准垂直对齐
➢ distribute horizontally::横向均匀排布
以最左边和最右边一个控件的坐标为准,计算控件之间间隔的平均值,然后在横向上均匀排列。
➢ distribute vertically::纵向均匀排布
以最上面和最下面一个控件的坐标为准,计算控件之间间隔的平均值,然后在纵向上均匀排列。
4. 新建 panel
创建全新的 panel,此操作将删除 panel 所有现有的控件。
5. 加载配置
载入现有 panel 配置文件。
6. 存储配置
存储当前 panel 的配置文件。
7. panel 参数配置
主要包含如下参数配置:
➢ feature enable:是否使能 panel
➢ layout:panel 内部控件整体布局
➢ design time:设计时是否显示链接标签和控件名称
➢ refresh rate:配置 panel 数据的刷新时间。推荐刷新时间为 300ms。如果电脑配置较高,可以配置更高的刷新率
二 控件基本操作
1. 添加控件
2. 删除控件
直接 delete 键,或者右键,快捷菜单选择删除。
3. 移动控件
控件都会有自己所在的容器,在容器范围内,想调整位置,直接选中控件,左键按住,移动即可。如下所示:
4. 移动到容器外面
tsmaster 不支持直接拖拽到容器外面,如果要把控件移出容易,可以采用剪切(ctrl+x)+ 粘贴(ctrl+v)的方式可以把控件移动到容器外面。
5. 显示控件类型名
在设计时(design time)阶段,默认是显示控件的名称(这个名称是控件的唯一 id,是系统默认分配的,不能修改,在运行时不可见)的,如下图所示:
如果在设计阶段不想看到控件的唯一名称,可以到 settings 界面中进行设置,如下所示:
6. 显示控件关联的变量链接
在设计时(design time)阶段,用户可以设置显示当前控件所关联的变量(can/lin 信号或者系统变量等),便于设计者清晰的知道当前该控件所关联的信号值,如下图所示:
在设计时阶段,打开和关闭该关联信号的显示,跟打开和关闭控件名称的显示操作是一样的,如下图所示:
三 ui事件
tsmaster 提供了丰富的 panel 界面。通过关联变量,可以实现变量值的修改,或者变量值修改过后在 ui 界面上呈现,这些都比较好理解。如果用户要实现按下按键过后,tsmaster 软件发送一串报文,则需要配合 c 脚本实现 ui 事件机制。
ui 事件机制
panel 的事件机制架构图如下图所示:
panel 事件机制的实现,简单来说可以概括如下:panel 中用户输入(按下按键,输入数值等)->改变关联的小程序变量的值->触发 c 脚本中数值变化事件->在事件中执行用户想执行的代码即可。下面以按键发送报文为例讲解 ui 事件的添加过程。
四 释疑
1. 为啥 dbc 解析是对的,panel 上控件显示不对?
问题描述:
为什么信号值 dbc 解析出来是 12%,但是仪表盘上总是显示 1.0(100%)
查看信号定义,因为信号值定义的范围是 0—100,单位为”%”,解析出来的信号值为12%,代表信号值为 12,然后单位是字符串”%”,并不是信号值是 0.12。因此,仪表盘的范围应该是 0—100,跟信号定义中的范围是一致的。如果仪表盘的范围设置为 0—1,则当信号值显示为 12%的时候,仪表盘当然会显示到最大值 1。
解决办法:
设置仪表控件属性,调整该控件的显示范围跟信号的范围一样。从 0-1 调整为 0-100,调整过后,仪表盘显示正常。
2. 添加了 dbc,为啥通过 panel 关联信号的时候看不到任何信号?
问题描述:
加载了示例数据库:tosun_hardware_synthesize
可以看到,有报文,有信号等。
在面板中,添加 inputoutputbox,选择关联一个 can 信号,结果界面如下:
此时如果用单存显示控件,如 progressbar 等关联信号,是可以看到信号的。
原因分析:
inputbox 是输入信号,这种信号从逻辑上来说需要被修改并发送到总线上,因此必须关联到一个发送节点的 can 信号上。然后我们继续看这个数据库:
可见,节点数量为 0,也就是没有任何发送和接收节点。这种情况下是无法启动 rbs仿真的,因为没有发生节点,也就看不到任何跟发送节点相关的信号了。
解决办法:
添加发送节点,并把报文和信号关联到发送节点上,就可以看到信号了。
3. panel 中看不到滚动条
在设计 panel 的时候,出现看不到窗体看不到滚动条(垂直+水平)的情况。如果窗体面积很大,超出了屏幕显示范围,就会出现一部分窗体被遮挡的情况。如下所示:
原因分析:
电脑屏幕设置了缩放,造成控件内部不能正确计算相对屏幕的尺寸,因此无法正确显示滚动条。查看电脑设置如下:
解决方案:
关闭屏幕缩放,设置缩放为 100%,重启软件,即可重新看到窗体的滚动条。
可以看到,在窗体上重新出现了滚动条(垂直+水平),如下所示:

详解高光谱成像技术的应用案例
恒温阀的工作原理
基于石墨烯的电子产品
怎样用ArduinoProMicro进行PC远程控制
哈苏X1DII50c体验 不到四万的中画幅买不买
应用笔记 | TSMaster——图形编辑面板功能模块简介
兆易创新GD32 MCU联手Amazon AWS共建嵌入式云平台
工信部:将重点检查 5G 基站 “最低价中标”现象
别迷信低价山寨电子书 那只是传说
如何在微控制器上用相对较少的引脚驱动多个LED
Windows 10不习惯重装Windows 7不成功?原来是分区的问题
模块化仪器系统如何满足自动化测试设备需求
斯坦福大学的一个研究小组设计了一种机器人外骨骼
国产工业机器人如何打破当前局面
小米6发布会精彩盘点回顾:小米6配置、外观、跑分、性能、价格全揭晓,性能怪兽小米6全球首发
造车新势力1-4月上牌量达到2.36万辆,同比增长43%
iPad遥控器详细介绍
dhcp服务异常怎么修复
华大北斗上榜“深圳知名品牌”
Nature Comm.:为反铁磁自旋电子器件的设计提供了新思路