按钮控件 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:切换页面、弹出下拉列表、发送数据等,配合脚本可实现各种逻辑应用。 属性 --------------------------------- .. image:: image/按钮/按钮属性.png :align: center :alt: 按钮属性 | **基础属性 :** 参考控件概念- :ref:`基础属性` **坐标属性 :** 参考控件概念- :ref:`坐标属性` **背景属性 :** 参考控件概念- :ref:`背景属性` **加载属性 :** 参考控件概念- :ref:`加载属性` **文本属性 :** 参考控件概念- :ref:`文本属性` **过渡属性 :** **过渡是指按钮由默认弹起状态到按下的过程(注意:仅背景为颜色时有效)** .. image:: image/按钮/按钮过渡属性.png :align: center :alt: 按钮过渡属性 | + 过渡类型(type):特效类型:0-无 1-放大效果 2-向下移动效果 3-水滴效果 4-收缩效果(只读) - 过渡时间(time):特效时间(毫秒),0-65535(只读) + 过渡变化值(val):过渡变化的目标值(只读) **特有属性 :** .. image:: image/按钮/按钮特有属性.png :align: center :alt: 按钮特有属性 | + 圆角(rad):圆角值,范围:0-100(读写) - 长按时间(lptime):确定为长按的时间:0-短按 200-65535ms-长按(只读) **当长按时间(lptime)大于等于200,支持长按,支持长按事件,属性如下图:** .. image:: image/按钮/按钮特有属性长按单次.png :align: center :alt: 按钮特有属性长按单次 | - 长按循环(repeat):是否循环执行长按事件:0-单次 1-循环(只读) **当长按循环(repeat)设为循环,支持循环执行长按事件,属性如下图:** .. image:: image/按钮/按钮特有属性长按循环.png :align: center :alt: 按钮特有属性长按循环 | - 长按间隔(rptime):循环执行长按事件的间隔时间:50-65535ms(只读) --------------------------------- 事件 --------------------------------- **弹起事件:** 控件按下且弹起后执行 **按下事件:** 控件按下后执行 **长按事件:** 按钮一直按下,达到设定时间后执行一次。长按循环设为是,则根据间隔循环执行长按事件 --------------------------------- 功能演示 --------------------------------- `点击下载演示工程 `_ .. image:: image/按钮/按钮功能演示.png :align: center :alt: 按钮功能演示 | .. tip:: 把工程配置的启动页面(pid)改为当前页面ID可以立即显示此页面。 | 长按间隔执行事件 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/按钮/长按间隔.png :align: center :alt: 长按间隔 | - 功能:按住“长按间隔”按钮,在模拟器返回数据区可以看到间隔打印信息。 - 实现原理: 1. “长按间隔”按钮特有属性,设置如下图: .. image:: image/按钮/长按特有属性.png :align: center :alt: 长按特有属性 | 2. 并在 ``长按事件`` 中编写 :: prints("press");//间隔打印press | 按钮发送数据 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/按钮/发送数据.png :align: center :alt: 发送数据 | - 功能:调用printh指令发送数据,在模拟器返回数据区可查看数据。 .. image:: image/按钮/勾选.png :align: center :alt: 勾选 | - 实现原理:在 ``弹起事件`` 中编写 :: printh(AA 02 00 FE FE); //发送十六进制指令 .. hint:: 硬件屏发送数据给单片机,可以调用 ``printh`` 和 ``prints`` 两个指令。具体参考::ref:`串口屏发送` | 加载特效 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/按钮/加载特效.png :align: center :alt: 加载特效 | - 功能1:控件加载时,从不同方位飞入。 - 实现原理:配置按钮的加载属性即可。左边飞入效果配置如下图: .. image:: image/按钮/左边飞入属性.png :align: center :alt: 左边飞入属性 | - 功能2:加载后,点击按钮实现移动效果。 - 实现原理:调用 move指令,如左边飞入按钮的 ``弹起事件`` 编写了 :: move(b10,-120,297,226,297,600,5); // 从左边移动,加载效果:反弹 | .. hint:: 所有可显示的控件都支持加载特效和move指令。 | 过渡特效 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/按钮/过渡特效.png :align: center :alt: 过渡特效 | - 功能:按钮按下时的特效。(注意:仅背景类型为颜色时有效) - 实现原理:配置按钮的过渡属性即可。放大效果配置如下图: .. image:: image/按钮/放大效果.png :align: center :alt: 放大效果 | 切换页面 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. image:: image/按钮/切换页面.png :align: center :alt: 切换页面 | - 功能:切换页面 - 实现原理:在按钮的 ``弹起事件`` 中编写 :: page(main); | | | | | |