zoukankan      html  css  js  c++  java
  • 【STM32H7】第28章 ThreadX GUIX滚轮控件实现参数调节

    最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429

    第28章       ThreadX GUIX滚轮控件实现参数调节

    本章节为大家讲解GUIX的滚轮控件实现参数调节,非常实用。

    28.1初学者重要提示

    28.2 GUIX Studio创建窗口

    28.3 GUIX回调事件处理

    28.4 实验例程设计框架

    28.5 实验例程

    28.6 总结

    28.1 初学者重要提示

    1.   务必看第11章学习GUIX Studio的使用方法和第12章学习GUIX Studio生成的代码移植到硬件平台的方法。
    2.   本章配套例子制作了一个年月日设置案例,实际项目用到的类似场景比较多。

    28.2 GUIX Studio创建窗口

    我们这里设计了一个窗口,界面大小800*480:

     

    28.2.1        主窗口设置

    主窗口大小800*480,注意注意合理配置一个Widget Id,后面要用到:

     

    另外还专门设置了一个回调函数:

     

    28.2.2        日期更新控件

    日期更新是采用的Prompt文件控件实现,注意Widget Id,后面要用到:

     

    并注意开启运行时动态更新:

     

    28.2.3        滚轮控件设置

    GUIX有三种滚轮控件,分别是Generic Scroll Wheel,Numeric Scroll Wheel和String Scroll Wheel。我们这里使用的是Numeric Scroll Wheel。

    添加方法如下,依次添加了三个,分别用于年月日设置:

     

    我们这里以年设置为例进行说明,Widget id设置为GUI_ID_NSCROLLWHELL0:

     

    然后是下面几个参数设置:

     

    •   Total Rows

    这个是总行数设置。我们这里设置了30个。

    •   Selected Row

    表示当前选中的行。从0开始计数。

    •   Row Height

    表示行高度。

    •   Fade Edge Value

    表示控件边缘的透明度,0表示完全不透明,255表示完全透明。

    •   Fade Center Value

    表示控件中心位置的透明度,0表示完全不透明,255表示完全透明。

    •   Start Val

    表示起始数值。

    •   End Val

    表示结束数值,注意设置的数字范围跟参数Total Rows匹配。

    28.3 GUIX回调事件处理

    滚轮控件调节后,可以在回调函数里面获取滚轮数值,回调代码如下:

    •   滚轮控件的更新后,可以通过函数gx_scroll_wheel_selected_get获取当前选中的位置索引,注意是从0开始的。滚轮的句柄window.window_numeric_scroll_wheel。
    •   日期更新使用的文本控件Prompt,大家通过滚轮设置时间后,点击Promp文件控件所在位置就会更新为最新的设置数值。

    gx_prompt_text_set(&(window.window_prompt), buf);

    28.4 实验例程设计框架

    本章例程的重点是滚轮控件的使用方法。

    28.5 实验例程

    (注,如果是电阻屏,需要做触摸校准,校准方法看本教程附件章节A)

    配套例子:

    本章节配套了如下两个例子供大家移植参考:

    •   V7-2039_GUIX Scroll Wheel

    GUIX Studio生成的代码在硬件平台实际运行的工程,含有GCC,IAR,MDK AC5和AC6四个版本工程。

    •   V7-2040_GUIX Studio Scroll Wheel

    GUIX Studio工程模板,设计界面后,生成的文件可直接添加到MDK,IAR和GCC软件平台使用。

    实验目的:

    1. 本章主要学习GUIX的滚轮控件参数调节。

    实验内容:

    1、共创建了如下几个任务,通过按下按键K1可以通过串口打印任务堆栈使用情况

    • App Task Start任务  :启动任务,这里用作BSP驱动包处理。
    • App Task MspPro任务 :消息处理,这里用作LED闪烁。
    • App Task UserIF任务 :按键消息处理。
    • App Task GUI任务    :GUI应用任务。
    • App Task STAT任务   :统计任务。
    • App Task IDLE任务   :空闲任务。
    • GUIX System Thread  :GUI系统任务。
    • System Timer Thread任务:系统定时器任务。

    实验效果:

     

    GUIX Studio的界面设计如下:

     

    串口打印任务执行情况:

    IAR,MDK AC5和AC6工程可以串口打印任务执行情况:按开发板的按键K1可以打印,波特率 115200,数据位 8,奇偶校验位无,停止位 1:

     

    Embedded Studio(GCC)平台的串口打印是通过其调试组件SEGGER RTT做的串口打印,速度也非常快,打印效果如下:

     

    展示里面有乱码是因为Embedded Studio不支持中文。

    28.6 总结

    本章节主要为大家讲解了滚轮控件的使用方法,非常实用,大家可以尝试自己也创建一个滚轮控件效果展示。

    微信公众号:armfly_com 安富莱论坛:www.armbbs.cn 安富莱淘宝:https://armfly.taobao.com
  • 相关阅读:
    d3-tree 双向树
    .gitignore
    url正则匹配
    this 指向
    git 用法小总结
    心态崩了?
    内存溢出和内存泄漏的区别
    jQuery添加方法
    物理像素与逻辑像素
    服务器返回的status
  • 原文地址:https://www.cnblogs.com/armfly/p/15011288.html
Copyright © 2011-2022 走看看