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

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

[复制链接]
jundao721 发布时间:2025-12-9 20:46
3 r  `+ v, f" T4 v( b
       UI界面上还得有个油表,大部分都是机械指针。这里暂时不使用机械指针,还是使用circleProgress 和 TextArea控件。/ v( x4 t) a% `, i! C* M
       计划实现的功能就是手滑动circleProgress实现加油,TextArea数字也跟着直观指示。
- t, J5 x/ n7 _9 s       两个控件的值范围是0-100L,后来想想,一般油箱就50L,不一般的就比较大了。% e# Y  A: `8 j, {% {5 i$ l& p$ T
       书归正传,这里实现只需要在view里实现即可。
) q! K6 I$ i% `' v3 h# [       定义界面如图1所示:
. H! r; ^9 K6 U2 n2 e 5-1.png 3 t$ G- Y1 g4 ^; X
图1& j6 l2 j  O- H: m
      在View.cpp里实现功能,函数实现如下所示:: R* X5 j7 w" {- V% I) D! A
  1. int x = evt.getNewX();    // 手指当前位置 X
      X  @. H0 f: B+ M, A+ n
  2. ' X" ~" v! \  |1 F9 S. p
  3.     int minX = circleProgress2.getX();
      F3 r- v# w( U+ Q* q/ V; o
  4.     int maxX = minX + circleProgress2.getWidth();4 q+ h" x3 U- r6 Z/ F

  5. & y1 U# u3 @1 {* h& g- m! g
  6.     int pos = x - minX;
    7 p& U: U$ E. m& C8 X, m
  7.     if (pos < 0) pos = 0;0 J5 F2 U0 N8 h$ _
  8.     if (pos > (maxX - minX)) pos = (maxX - minX);
    , P( ]- A" ?8 Q6 D

  9. # {8 ]- z2 u: r' i) n
  10.     int value = pos * 100 / (maxX - minX);  // 映射到 0~100' J4 A) Y& S( x7 H

  11. " y' g- c9 |- u! l2 _5 X+ G
  12.     // 更新 CircleProgress
    $ y. G* P% X% R7 y
  13.     circleProgress2.setValue(value);- P* x1 w5 v8 p  g, u6 A  h" P
  14. 3 ?8 A7 B1 d- W0 R# S# B7 ]/ y
  15.     // 更新文本
    ! t$ M8 M& h' t  D# L
  16.     Unicode::snprintf(textArea4Buffer, TEXTAREA1_SIZE, "%d", value);* T9 E3 n9 l5 G% E
  17.     textArea4.invalidate();
复制代码
0 {# L" q0 Z1 l6 i. z4 \# B
$ T2 e$ }  h6 n+ i/ S2 F

6 e" y/ k4 e3 k% i  e0 @
# E3 v2 Q/ t# Z8 L6 Q
      实际展示效果如图2所示:
" O$ X  r7 z6 b( [ 5-2.gif ) h9 e- Z& R4 a% J5 J
图2
( `. l3 \8 h. g( _1 I7 }3 v. m
赞 收藏 评论1 发布时间:2025-12-9 20:46

举报

1个回答
STMCU-管管 回答时间:2025-12-10 09:26:20

不错不错

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版