当前位置: 首页 > article >正文

lvgl学习复选框部件和进度条部件(基于正点原子)

复选框部件(lv_checkbox)

        复选框部件常用于选择某个内容的开启和关闭,可以理解为自带标签的开关。

复选框部件组成部分:

主体(LV_PART_MAIN)

勾选框(LV PART INDICATOR)

知识点1:创建复选框部件

lv_obj_t   *checkbox  = lv_checkbox_create (parent );

知识点2:文本设置

lv_checkbox_set_text( checkbox, "remember the password" );            /* 设置文本内容 */ lv_obj_set_style_pad_column( checkbox, 20, LV_STATE_DEFAULT );         /* 设置文本和勾选框的间距 */

知识点3:添加、清除复选框状态

lv_obj_add_state(checkbox, LV_STATE_CHECKED | LV_STATE_DISABLED);    /* 添加状态:默认选中且不可修改 */

lv_obj_clear_state(checkbox, LV_STATE_CHECKED | LV_STATE_DISABLED);    /* 清除复选框的状态 */    

知识点4:获取(判断)复选框状态

lv_obj_has_state(checkbox, LV_STATE_CHECKED);                     /* 返回值:1,选中; 0,非选中 */

进度条部件(lv_bar)

        进度条部件常用于显示当前任务的完成进度。

进度条部件组成部分:

        主体(LV_PART_MAIN)

        指示器(LV_PART_INDICATOR)

知识点1:创建进度条部件

lv_obj_t   *bar  = lv_bar_create ( parent );

知识点2:设置大小、当前值、范围值

lv_obj_set_size( bar, 400, 20 );                            /* 设置大小 */

lv_bar_set_value( bar, 50, LV_ANIM_ON );                    /* 设置当前值 */

lv_bar_set_range( bar, -100, 100 );                        /* 设置范围值 */

知识点3:设置动画时间

lv_obj_set_style_anim_time( bar, 500, LV_STATE_DEFAULT );        /* 动画设置必须放在当前值设置之前 */

拓展知识点:设置模式、起始值

lv_bar_set_mode( bar, LV_BAR_MODE_RANGE );            /* 设置模式 */

lv_bar_set_start_value( bar, -50, LV_ANIM_OFF );            /* 设置起始值 */

enum {
    LV_BAR_MODE_NORMAL,			/* 默认模式 */
    LV_BAR_MODE_SYMMETRICAL,		/* 从零值绘制到当前值(当前值可以小于0) */
    LV_BAR_MODE_RANGE			/* 允许设置起始值,但起始值必须小于当前值 */
};

注意:在V8.2版本的LVGL中,默认模式也允许设置起始值,但是后续的版本可能会修改。

还有要注意的是:

        设置进度条的范围值还有设置动画时间必须要放在当前值设置之前,不然会出错。

        当进度条高度大于宽度时,其方向变为垂直。

        动画时间指的是旧值刷新到新值的绘图时间,并不是现实中当前值变化所需的时间。


http://www.kler.cn/a/410866.html

相关文章:

  • ffmpeg视频滤镜:提取缩略图-framestep
  • mac 安装node提示 nvm install v14.21.3 failed可能存在问题
  • 前向概率与隐马尔可夫模型的解码问题
  • QML学习 —— 29、3种不同使用动画的方式(附源码)
  • 在win10环境部署opengauss数据库(包含各种可能遇到的问题解决)
  • 用 Python 从零开始创建神经网络(十):优化器(Optimizers)(持续更新中...)
  • Vue3 nextTick 使用教程
  • SQL 复杂查询
  • C++ Lambda 表达式
  • 【小白学机器学习34】用python进行基础的数据统计 mean,var,std,median,mode ,四分位数等
  • GitCode 平台设置访问令牌 从而git仓库(附pycharm创建版本控制项目)
  • 《UnityShader 入门精要》更复杂的光照
  • 力扣——寻找峰值
  • 智能合约运行原理
  • 实现可视化大屏的适配,并且解决缩放导致的事件偏移问题
  • 【源码】Sharding-JDBC源码分析之SQL中分片键路由ShardingSQLRouter的原理
  • pytorch torch.Tensor.item() 方法介绍
  • 【VRChat 改模】开发环境搭建:VCC、VRChat SDK、Unity 等环境配置
  • Pytorch使用手册-Datasets DataLoaders(专题三)
  • 李春葆《数据结构》-课后习题代码题
  • Ubuntu20.04+ROS 进行机械臂抓取仿真:环境搭建(一)
  • Amazon商品详情API接口:电商创新与用户体验的驱动力
  • 电子消费品生产线:科技的时尚,玛哈特矫平机为生产线打造平整面板
  • 【SpringBoot】MapStruct生成映射代码
  • 【论文笔记】Number it: Temporal Grounding Videos like Flipping Manga
  • Qt之QMainWidget相关