指针控件 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:指针控件是一种用于显示仪表盘或指示器的控件。它可以通过旋转指针来表示数值的变化,直观地反映当前状态或读数。 属性 --------------------------------- .. image:: image/指针/属性.png :align: center :alt: 指针属性 | **基础属性 :** 参考控件概念- :ref:`基础属性` **坐标属性 :** 参考控件概念- :ref:`坐标属性` **背景属性 :** 参考控件概念- :ref:`背景属性` **加载属性 :** 参考控件概念- :ref:`加载属性` **特有属性 :** .. image:: image/指针/特有属性.png :align: center :alt: 指针特有属性 | - 当前角度(val):当前指针角度 范围:0-360 默认:0 (3点钟方向)(读写) - 起始角度(start): 起始偏移角度值,范围:0-360。 实际显示角度 = 当前角度 + 起始角度。如果关联RTC后指向不对,可调整该值(读写) - 指针类型(style):指针类型形状,0-长方形,1-图片(只读) - 关联RTC(rtc):关系RTC信息,0-无,1-时,2-分,3-秒(只读) 当 ``指针类型(style)`` 为 ``0-长方形`` 时, 属性如下图所示 .. image:: image/指针/特有属性.png :align: center :alt: 指针特有属性 | - 指针颜色(color):指针颜色,0-65535(读写) - 宽度(wid):指针的宽度(像素点),范围:0-32768(读写) - 高度(hig):指针的高度(像素点),范围:0-32768(读写) - 中心偏移(rofs):指针旋转位置与控件中心点的偏移位置。rofs=0时,矩形的左中点在控件的中心位置处。rofs>0时,远离控件中心点,rofs<0时,靠近控件中心点(读写) 当 ``指针类型(style)`` 为 ``1-图片`` 时, 属性如下图所示 .. image:: image/指针/特有属性-图片.png :align: center :alt: 指针特有属性 | - 图片(pic):图片ID资源,范围0-65535,65535表示无(读写) - 旋转x坐标(x):图片旋转中心横坐标,图片左上角为原点。x=0时,图片左上角在控件中心位置,正数朝左移,负数朝右移(读写) - 旋转y坐标(y):图片旋转中心纵坐标,图片左上角为原点。y=0时,图片左上角在控件中心位置,正数朝上移,负数朝下移(读写) --------------------------------- 事件 --------------------------------- **弹起事件:** 控件按下且弹起后执行 **按下事件:** 控件按下后执行 ----------------------------------------- 功能演示 --------------------------------- `点击下载演示工程 `_ .. image:: image/指针/指针demo.png :align: center :alt: 指针demo | .. tip:: 把工程配置的启动页面(pid)改为当前页面ID可以立即显示此页面。 | 指针配合RTC实现时钟功能 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/指针/指针时钟demo.png :align: center :alt: 指针时钟demo | - 功能:指针和RTC配合,实现时钟功能 - 原理:表盘使用图片控件显示,时分秒使用指针控件去实现分别关联RTC的时分秒功能,同时使用RTC控件实时显示当前时间。 - 创建一个图片控件,指定图片为变盘图片ID - 创建三个指针控件,指定指针类型为图片,分别指定对应指针的图片ID,并在特有数据中关联RTC对应的功能 1、秒针指针控件属性 .. image:: image/指针/秒针demo.png :align: center :alt: 秒针demo 2、分针指针控件属性 .. image:: image/指针/分针demo.png :align: center :alt: 分针demo 3、时针指针控件属性 .. image:: image/指针/时针demo.png :align: center :alt: 时针demo .. attention:: 当指针类型为图片时,注意修改图片的旋转坐标。左上角为图片旋转的零点。 - 添加一个RTC控件,修改显示格式、字体、文本颜色 .. image:: image/指针/指针RTCdemo.png :align: center :alt: 指针RTCdemo - 选中图片控件和三个指针控件使用布局->中间对齐+居中对齐 指针360度旋转 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/指针/指针旋转demo.png :align: center :alt: 指针旋转demo | - 功能:指针和定时器配合,实现360度旋转 - 原理:在定时器事件中循环更新指针角度 在 定时器事件 中编写以下脚本 .. code-block:: :linenos: // 进度条控件最大值为:100, 超过100系统默认改为100 if(g2.val==360) // 当进度值为100时,设为0 { g2.val=20; } else { g2.val+=20; }