5、LVGL控件-滑轮、滑动条、圆弧

news2024/11/26 14:29:45

本篇文章目录导航

♠♠ LVGL控件-滑轮、滑动条、圆弧 ♣♣♣♣ 一、LVGL 滑轮部件 ♦♦♦♦♦♦♦♦ 1.1 滑轮部件组成部分 ♦♦♦♦♦♦♦♦ 1.2 滑轮部件基本API ♦♦♦♦♦♦♦♦ 1.3 实验小演示 ♣♣♣♣ 二、LVGL 滑动条部件 ♦♦♦♦♦♦♦♦ 2.1 滑动条部件组成部分 ♦♦♦♦♦♦♦♦ 2.2 滑动条部件基本API ♦♦♦♦♦♦♦♦ 2.3 实验小演示(亮度调节器) ♦♦♦♦♦♦♦♦ 2.4 实验小演示 ♣♣♣♣ 三、LVGL 圆弧部件 ♦♦♦♦♦♦♦♦ 3.1 圆弧部件组成部分 ♦♦♦♦♦♦♦♦ 3.2 圆弧部件基本API ♦♦♦♦♦♦♦♦ 3.3 实验小演示(调节器) ♦♦♦♦♦♦♦♦ 3.4 实验小演示(动态加载) 

 #LVGL控件-滑轮、滑动条、圆弧 ##一、LVGL 滑轮部件 >滚轮部件常用于多选一的场景,它以滚轮的形式来展现多个选项。类似于下拉列表。

效果图:

 

 ###1.1 滑轮部件组成部分 主体LV_PART_MAIN) 选项框LV_PART_SELECTED) 

 ###1.2 滑轮部件基本API 创建滚轮部件:

lv_obj_t *roller = lv_roller_create(parent);

设置选项间隔:

lv_obj_set_style_text_line_space(roller, 30, LV_STATE_DEFAULT);

设置选项内容、滚动模式:

enum{
    LV_ROLLER_MODE_NORMAL,    /* 正常模式 */
    LV_ROLLER_MODE_INFINITE,  /* 无限循环模式,对内存占用较大 */
};

lv_roller_set_options(roller, "a\nb\nc\d", LV_ROLLER_MODE_NORMAL);

设置当前所选项:

lv_roller_set_selected(roller, 3, LV_ANIM_ON);

设置可见行数:

lv_roller_set_visible_row_count(roller, 2);

获取选项内容:

lv_roller_get_selected(roller);                          /* 获取索引 */
 
char buf[10];
lv_roller_get_selected_str(roller, buf, sizeof(buf));    /* 获取选项文本 */

 ###1.3 实验小演示 设计两个滑轮,一个正常模式,一个无限循环模式。

lv_obj_t *roller1, *roller2;

static void event_cb(lv_event_t *e)
{
    lv_event_code_t code = lv_event_get_code(e);    /* 获取触发事件类型 */
    lv_obj_t *obj = lv_event_get_target(e);         /* 获取对象 */

    if(code == LV_EVENT_VALUE_CHANGED)
    {
        char buf[10];
        lv_roller_get_selected_str(obj, buf, sizeof(buf));    /* 获取选项文本 */
        if(obj == roller1)
        {
            printf("The Left Roller:%d %s\n", lv_roller_get_selected(obj), buf);
        }else
        {
            printf("The Right Roller:%d %s\n", lv_roller_get_selected(obj), buf);
        }
    }
}

void my_gui(void)
{
    /**********************第一个滑轮*************************/
    roller1 = lv_roller_create(lv_scr_act());                               /* 创建滑轮部件 */
    lv_obj_align(roller1, LV_ALIGN_CENTER, -150, 0);

    lv_obj_set_style_text_line_space(roller1, 30, LV_STATE_DEFAULT);        /* 设置选项间隔 */
    lv_roller_set_options(roller1, "a\nb\nc\nd", LV_ROLLER_MODE_NORMAL);    /* 设置正常模式 */
    lv_roller_set_selected(roller1, 0, LV_ANIM_ON);                         /* 设置当前所选项 */
    lv_roller_set_visible_row_count(roller1, 2);                            /* 设置当前可见行数 */

    lv_obj_add_event_cb(roller1, event_cb, LV_EVENT_VALUE_CHANGED, NULL);   /* 添加改变事件 */

    /**********************第二个滑轮*************************/
    roller2 = lv_roller_create(lv_scr_act());                               /* 创建滑轮部件 */
    lv_obj_align(roller2, LV_ALIGN_CENTER, 150, 0);

    lv_obj_set_style_text_line_space(roller2, 30, LV_STATE_DEFAULT);        /* 设置选项间隔 */
    lv_roller_set_options(roller2, "A\nB\nC\nD", LV_ROLLER_MODE_INFINITE);  /* 设置循环模式 */
    lv_roller_set_selected(roller2, 2, LV_ANIM_ON);                         /* 设置当前所选项 */
    lv_roller_set_visible_row_count(roller2, 3);                            /* 设置当前可见行数 */

    lv_obj_add_event_cb(roller2, event_cb, LV_EVENT_VALUE_CHANGED, NULL);   /* 添加改变事件 */
}

演示图片:

 演示视频:LVGL滑轮部件 

 ##二、LVGL 滑动条部件 >滑块部件常用于调节某个参数的值,它以直线滑动的形式来修改数值。

效果图:

 

 ###2.1 滑动条部件组成部分 主体(LV_PART_MAIN) 指示器(LV_PART_INDICATOR) 旋钮(LV_PART_KNOB) 

 ###2.2 滑动条部件基本API 创建滑块部件:

lv_obj_t *slider = lv_slider_create(parent);

点击5、LVGL控件-滑轮、滑动条、圆弧——古月居可查看全文

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2100408.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

论文阅读:MambaVision: A Hybrid Mamba-Transformer Vision Backbone

论文地址:arxiv 摘要 作者提出了一种新型的混合 Mamba-Transformer 主干网络。通过重新设计 Mamba 公式,增强了其高效建模视觉特征的能力。 此外,作者还通过对 ViT 与 Mamba 消融研究,实验结果表明了:在最后几层为 …

“双碳”减排背景下企业自发电系统该具备哪些功能?

随着全球能源危机加剧、用能需求上升以及新能源技术的迅速发展,新能源发电的应用范围不断扩大,并逐步形成了新型能源与电力市场。然而,由于新能源的能量密度普遍较低,进行大规模发电时需精心挑选适合的位置,因此新能源…

【网络安全】服务基础第一阶段——第九节:Windows系统管理基础---- Windows_AD域

目录 一、域与活动目录 1.1 工作组 1.2 域 1.2.1 域(Domain) 1.2.2 域控制器(Domain Controller,DC) 1.2.3 功能和角色 1.2.4 管理和监控 1.2 5 域结构 1.3 组织单元(Organizational Unit&#xff…

Seata 的4种事务模式(XA、AT、TCC、SAGA)

目录 前言 Seata架构 事务模式 XA AT TCC 区别 前言 在分布式系统中,实现一个功能可能需要由几个不同的服务来共同实现。这就会带来一个问题,不同的服务之间无法做到使用同一个事务,这就无法保证数据的一致性了。在一些对数据一致性要…

基于SSM的“基于决策树算法的大学生就业预测系统”的设计与实现(源码+数据库+文档)

基于SSM的“基于决策树算法的大学生就业预测系统”的设计与实现(源码数据库文档) 开发语言:Java 数据库:MySQL 技术:SSM 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统用户用例图 学校基础信息管理 毕业生基…

Java设计模式之装饰器模式详细讲解和案例示范

1. 引言 装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许向现有对象添加新的功能,而无需修改其结构。这种模式通过使用组合而非继承来扩展对象的行为,在许多实际应用中极为常见。本文将详细介绍装饰器模式…

世界复合医学杂志社世界复合医学编辑部2024年第4期目录

论著 苏子降气汤联合三子养亲汤治疗痰浊壅肺型慢性阻塞性肺疾病急性加重期的临床疗效 周芹;周磊; 1-437 天麻钩藤汤加减联合依那普利叶酸片对原发性高血压患者血压水平与中医证候积分的影响 邹文博;王世雄; 5-8 伏诺拉生联合康复新液治疗反流性食管炎的临床研究 孙…

山体滑坡监测预警系统—百科分享

GNSS山体滑坡监测预警系统是一种利用全球导航卫星系统(GNSS)技术,对易发生山体滑坡的地段进行24小时不间断监测的先进系统。该系统能够实时记录易滑坡地段山体的各种变化情况,为灾害预警和防治提供科学依据。 GNSS山体滑坡监测预警系统通过在地表关键位置…

05-最新PyCharm安装详细教程及pycharm配置

一、PyCharm简介及其下载网站 PyCharm是由JetBrains打造的一款Python IDE(Integrated Development Environment,集成开发环境),带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。PyCharm提供了代码编辑、调试、语…

700道学生百科知识题库ACCESS\EXCEL数据库

今天这个题库虽然记录数不多,但是题目很经典、精彩、精华,分7个难度级别,每个级别100题;分类也很多,包含:百科、常识、地理、动画、国学、化学、历史、旅游、美食、诗词、数学、体育、天文、文学、物理、星…

如何选择合适的同轴连接器?关键性能指标全解析

同轴连接器是用于连接同轴电缆或同轴传输线与其他电子设备或另一段同轴电缆的一种装置。它们在射频(RF)和微波通信系统中非常常见,因为它们能有效减少信号损耗并提供良好的屏蔽,以防止电磁干扰(EMI)。 基本…

执行标准应该公开吗?

在当今社会,标准的重要性日益凸显。执行标准,如同商业世界和公共生活中的指南针,为产品质量、服务水平以及各类活动划定了清晰的界限。那么,执行标准应该公开吗?这是一个值得我们深入探讨的关键问题。 一、对于国家标…

如何在VSCode中同时打开多个页面?

问题描述: 使用VSCode的时候,为什么打开一个文件之后就会把另一个文件顶替,始终保持打开一个文件的状态呢?如果我想同时打开两个文件页面怎么办? 解决办法: 在 Visual Studio Code (VSCode) 中&#xff…

手机播放DVD:VLC播放器(直接下载apk)

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…

飞睿智能酒店人体存在感应雷达模块24G传感器,智能空调、LED照明开关节能新风尚

在科技日新月异的今天,智能酒店已经不再是遥不可及的梦想,而是逐渐走进了我们的日常生活。从智能门锁到自动调节的室内环境,再到贴心的语音助手服务,智能酒店为我们带来了未有的便捷与舒适。然而,在这些令人惊叹的智能…

Sankey流图在老年癌症患者症状分析中的应用|科研绘图·24-09-03

小罗碎碎念 本期推文主题|桑基图 桑基图我们很多人都不陌生,但是大部分应该都是仅限于在文献中读到过,动手去实践的较少,在文献中的具体作用,可能也不太清楚,所以我这一期推文就来盘一盘桑基图。 本期推文…

机器学习算法五之 目标检测评价指标 IOU 准确率 召回率等

机器学习算法五之 目标检测评价指标 IOU 准确率 召回率等 在目标检测算法中,训练出一个模型,想要知道这个模型的效果怎么样,主要是从模型的指标得出的,指标不仅在论文还是在自己学习的过程中,都是十分重要的&#xff…

第十五届蓝桥杯青少组省赛成绩查询及国赛考试安排

刚刚,蓝桥杯青少组官网发布了“关于第十五届蓝桥杯大赛青少组省赛成绩查询及全国总决赛参赛证下载的通知”,第十五届蓝桥杯大赛青少组将开通省赛成绩查询通道,获得省赛一等奖的选手晋级全国总决赛,全国总决赛比赛时间为9月7日。 关…

全球大脑外滩“论剑”:2024年科技人文十大热点问题揭晓

当越来越多工作岗位可能被AI替代,如何实现人的劳动诉求和人生价值?当AI开始弥补甚至取代情感陪伴这一曾经独属于人类的体验,将带来哪些新可能和新问题? 9 月 3 日,外滩大会官微发布2024 Inclusion外滩大会科技人文十大…

高端控制台使用过程中如何保证用电安全

在数字化时代,高端控制台作为数据中心、监控室及正规工作站的核心设备,其稳定运行对于保障业务连续性至关重要。而用电安全,则是这一稳定运行不可或缺的前提。高端控制台集成了大量精密电子设备,对电力供应的质量与稳定性有着极高…