你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32H750-DK 车辆仪表】5.油表

[复制链接]
jundao721 发布时间:2025-12-9 20:46

       UI界面上还得有个油表,大部分都是机械指针。这里暂时不使用机械指针,还是使用circleProgress 和 TextArea控件。
       计划实现的功能就是手滑动circleProgress实现加油,TextArea数字也跟着直观指示。
       两个控件的值范围是0-100L,后来想想,一般油箱就50L,不一般的就比较大了。
       书归正传,这里实现只需要在view里实现即可。
       定义界面如图1所示:
5-1.png
图1
      在View.cpp里实现功能,函数实现如下所示:
  1. int x = evt.getNewX();    // 手指当前位置 X

  2.     int minX = circleProgress2.getX();
  3.     int maxX = minX + circleProgress2.getWidth();

  4.     int pos = x - minX;
  5.     if (pos < 0) pos = 0;
  6.     if (pos > (maxX - minX)) pos = (maxX - minX);

  7.     int value = pos * 100 / (maxX - minX);  // 映射到 0~100

  8.     // 更新 CircleProgress
  9.     circleProgress2.setValue(value);

  10.     // 更新文本
  11.     Unicode::snprintf(textArea4Buffer, TEXTAREA1_SIZE, "%d", value);
  12.     textArea4.invalidate();
复制代码




      实际展示效果如图2所示
5-2.gif
图2
收藏 评论1 发布时间:2025-12-9 20:46

举报

1个回答
STMCU-管管 回答时间:1 小时前

不错不错

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版