合宙Air724UG LuatOS-Air LVGL API控件--进度条 (Bar)
进度条 (Bar)

Bar 是进度条,可以用来显示数值,加载进度。
示例代码
– 创建进度条
bar = lvgl.bar_create(lvgl.scr_act(), nil)
– 设置尺寸
lvgl.obj_set_size(bar, 200, 20);
– 设置位置居中
lvgl.obj_align(bar, NULL, lvgl.ALIGN_CENTER, 0, 0)
– 设置加载完成时间
lvgl.bar_set_anim_time(bar, 2000)
– 设置加载到的值
lvgl.bar_set_value(bar, 100, lvgl.ANIM_ON)
创建
可以通过 lvgl.bar_create(par, copy) 创建一个进度条对象然后对其进行操作。
– 创建控件
bar = lvgl.bar_create(lvgl.scr_act(), nil)
设置数值
进度条的用法还是比较简单的,功能比较单一,只是设置数值。
lvgl.bar_set_value(bar, 50, lvgl.ANIM_OFF)

虽然翻译为了进度条,但是不要以为它的满量程只能是 100 (虽然这是个默认数值),进度条的数值范围也是可以设置的,比如下面的代码:
lvgl.bar_set_range(bar, 100, 200)
lvgl.bar_set_value(bar, 150, lvgl.ANIM_OFF)
这个就是把进度条的数值范围设置到了 100-200,所以 150 就是进度条的中间,跟上面的显示效果一样的。
动画
进度条设置的值可以是实时的,当然也可以是有延时的,可以通过 lvgl.ANIM_OFF lvgl.ANIM_ON 这两个值来决定是否显示设置值的一个中间效果。通过 lvgl.bar_set_anim_time 可以设置加载时间。
– 设置加载完成时间
lvgl.bar_set_anim_time(bar, 2000)
– 设置加载到的值
lvgl.bar_set_value(bar, 100, lvgl.ANIM_ON)
上面代码就是设置了 2秒 走完整个进度条:

进度条起始值也可以添加动画,录制有点卡,实际还是很流畅的。
– 设置进度条起始值
lvgl.bar_set_start_value(bar, 100, lvgl.ANIM_ON)
sys.wait(2000)
– 设置加载完成时间
lvgl.bar_set_anim_time(bar, 2000)
– 设置加载到的值
lvgl.bar_set_value(bar, 100, lvgl.ANIM_ON)

获取属性
进度条控件设置的很多值都可以通过 get 获取,具体使用情况可以参照 API。
API
lvgl.bar_create
调用 lvgl.bar_create(par, copy)
功能 创建一个进度条对象
返回 指向创建的进度条的指针
参数
par 指向对象的指针, 它将是新键对象的父对象
copy 指向进度条对象的指针, 如果不为 nil, 则将从其复制新对象
lvgl.bar_set_value
调用 lvgl.bar_set_value(bar, value, anim)
功能 在进度条上设置新值
参数
bar 指向进度条对象的指针
value 新数值
anim lvgl.ANIM_ON 用动画设置值。lvgl.ANIM_OFF 立即更改值。
lvgl.bar_set_start_value
调用 lvgl.bar_set_start_value(bar, start_value, anim)
功能 在进度条上设置新的起始值
参数
bar 指向进度条对象的指针
value 新的起始值
anim lvgl.ANIM_ON 用动画设置值。lvgl.ANIM_OFF 立即更改值。
lvgl.bar_set_range
调用 lvgl.bar_set_range(bar, min, max)
功能 设置进度条的最小值和最大值
参数
bar 指向进度条对象的指针
min 最小值
max 最大值
lvgl.bar_set_type
调用 lvgl.bar_set_type(bar, type)
功能 设置进度条的类型。
参数
bar 指向进度条对象的指针
type 进度条类型
lvgl.BAR_TYPE_NORMAL
lvgl.BAR_TYPE_SYMMETRICAL
lvgl.BAR_TYPE_CUSTOM
lvgl.bar_set_anim_time
调用 lvgl.bar_set_anim_time(bar, anim_time)
功能 设置进度条的动画时间
参数
bar 指向进度条对象的指针
anim_time 动画时间(以毫秒为单位)。
lvgl.bar_get_value
调用 lvgl.bar_get_value(bar)
功能 获取进度条的数值
返回 进度条的数值
参数
bar 指向进度条对象的指针
lvgl.bar_get_start_value
调用 lvgl.bar_get_start_value(bar)
功能 获取进度条的起始值
返回 进度条的起始值
参数
bar 指向进度条对象的指针
lvgl.bar_get_min_value
调用 lvgl.bar_get_min_value(bar)
功能 获取进度条的最小值
返回 进度条的最小值
参数
bar 指向进度条对象的指针
lvgl.bar_get_max_value
调用 lvgl.bar_get_max_value(bar)
功能 获取条形的最大值
返回 进度条的最大值
参数
bar 指向进度条对象的指针
lvgl.bar_get_type
调用 lvgl.bar_get_type(bar)
功能 获取进度条的类型。
返回 进度条类型
参数
bar 指向进度条对象的指针
lvgl.bar_get_anim_time
调用 lvgl.bar_get_anim_time(bar)
功能 获取进度条的动画时间
返回 动画时间(以毫秒为单位)。
参数
bar 指向进度条对象的指针
参考链接(C语言)
相关文章:
合宙Air724UG LuatOS-Air LVGL API控件--进度条 (Bar)
进度条 (Bar) Bar 是进度条,可以用来显示数值,加载进度。 示例代码 – 创建进度条 bar lvgl.bar_create(lvgl.scr_act(), nil) – 设置尺寸 lvgl.obj_set_size(bar, 200, 20); – 设置位置居中 lvgl.obj_align(bar, NULL, lvgl.ALIGN_CENTER, 0, 0) …...
图神经网络与分子表征:番外——基组选择
学过高斯软件的人都知道,我们在撰写输入文件 gjf 时需要准备输入【泛函】和【基组】这两个关键词。 【泛函】敲定计算方法,【基组】则类似格点积分中的密度,与计算精度密切相关。 部分研究人员借用高斯中的一系列基组去包装输入几何信息&am…...
rabbitmq笔记-rabbitmq客户端开发使用
连接RabbitMQ 1.创建ConnectionFactory,给定参数ip地址,端口号,用户名和密码等 2.创建ConnectionFactory,使用uri方式实现,创建channel。 注意: Connection可以用来创建多个channel实例,但c…...
13.Oracle中nvl()与nvl2()函数详解
Oracle中nvl()与nvl2()函数详解: 函数nvl(expression1,expression2)根据参数1是否为null返回参数1或参数2的值; 函数nvl2(expression1,expression2,expression3)根据参数1是否为null返回参数2或参数3的值 1.nvl:根据参数1是否为null返回参数…...
设置某行被选中并滚动到改行
<el-table :data"tableDamItem" ref"singleTable" stripe style"width: 100%" height"250" highlight-current-row v-on:row-click"handleTableRow"></el-table>/*** 设置表格行被选中,并滚动到该行* param po…...
React钩子函数之useRef的基本使用
React钩子函数中的useRef是一个非常有用的工具,它可以用来获取DOM元素或者保存一些变量。在这篇文章中,我们将会讨论useRef的基本使用。 首先,我们需要知道useRef是如何工作的。它返回一个可变的ref对象,这个对象可以在组件的整个…...
无风扇迷你电脑信息与购买指南
本文将解释什么是无风扇迷你电脑,以及计算产品组合中你可以购买的一些不同的无风扇迷你电脑的信息指南。 无风扇迷你电脑是一种小型工业计算机,旨在处理复杂的工业工作负载。迷你电脑是通过散热器被动冷却可在各种类型的易失性环境中部署。无风扇微型计…...
比特币是怎么回事?
比特币是怎么回事? 一句话描述就是,初始化几个比特币,申请成为矿工组织,发生交易时抢单记账成功可以比特币奖励,随着比特币数量的增加,奖励越来越少。怎么记账成功呢,通过交易信息幸运数字哈希…...
vue3+ts+uniapp小程序端自定义日期选择器基于内置组件picker-view + 扩展组件 Popup 实现自定义日期选择及其他选择
vue3ts 基于内置组件picker-view 扩展组件 Popup 实现自定义日期选择及其他选择 vue3tsuniapp小程序端自定义日期选择器 1.先上效果图2.代码展示2.1 组件2.2 公共方法处理日期2.3 使用组件 3.注意事项3.1refSelectDialog3.1 backgroundColor"#fff" 圆角问题 自我记…...
Java进阶篇--泛型
前言 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。它允许在定义类、接口和方法时使用类型参数。这种技术使得在编译期间可以使用任何类型,而…...
android framework之Applicataion启动流程分析
Application启动流程分析 启动方式一:通过Launcher启动app 启动方式二:在某一个app里启动第二个app的Activity. 以上两种方式均可触发app进程的启动。但无论哪种方式,最终通过通过调用AMS的startActivity()来启动application的。 根据上图…...
Linux Day10 ---Mybash
目录 一、Mybash介绍 1.1.mybash.c 打印函数 分割函数 命令函数 二、Mybash实现 2.1.打印函数 2.1.1需要使用到的功能函数 1.获取与当前用户关联的UID 2.获取与当前用户的相关信息---一个结构体(passwd) 3.获取主机信息 4.获取当前所处位置 5.给…...
Flask-Sockets和Flask-Login联合实现websocket的登录认证功能
flask_login 提供了一个方便的方式来管理用户会话。当你在 Flask 的 HTTP 视图中使用它时,你可以简单地使用 login_required 装饰器来确保用户已登录。 但是,flask_sockets 并没有直接与 flask_login 集成。如果你想在建立 WebSocket 连接时检查用户是否…...
东盟全面覆盖?长城战略部署核心区域市场,首个百万粉丝国产品牌
根据最新消息,长城汽车在东南亚地区取得了巨大的成功,成功进军了亚洲最大的汽车市场之一-印度尼西亚。这标志着长城汽车已经实现了东盟核心市场的全面覆盖,成为全球布局的重要一步。 在过去的几年里,长城汽车在东盟地区的市场布局…...
基于PHP的电脑商城系统
有需要请加文章底部Q哦 可远程调试 基于PHP的电脑商城系统 一 介绍 此电脑商城系统基于原生PHP开发,数据库mysql,前端bootstrap。用户可注册登录,购物下单,评论等。管理员登录后台对电脑商品,用户,订单&a…...
无客户端网络准入方案,为集成电路企业终端管理开启省事更省心模式
宁盾无客户端网络准入控制方案正在成为先进制造、高科技互联网企业等创新型客户的优选方案。创新型客户以技术密集型、研发人员占比高著称,在进行网络准入建设时,如何平衡好用户体验与顺利达成项目预期之间的矛盾,是创新企业 IT 安全团队格外…...
5G与4G的RRC协议之异同
什么是无线资源控制(RRC)? 我们知道,在移动通信中,无线资源管理是非常重要的一个环节,首先介绍一下什么是无线资源控制(RRC)。 手机和网络通过无线信道相互通信,彼此交…...
横扫“盲区”、“看透”缺陷,维视智造推出短波红外相机
在可见光领域,工业相机的视觉应用已经十分成熟,但在日常的客户咨询中,我们也经常接到一些“超纲需求”——客户想要检测“白底上的白色缺陷”、“不透明包装内的透明物体有无”等,均属于可见光无法实现的检测,而市面上…...
cgo踩坑:交叉编译过程出现的问题could not determine kind of name for C.XXX
尝试了网上的几种解决方法,都不行,现总结起来: 确认 /* #include <stdio.h> */ import "C"不要有空行 确认你引用的头文件存在(stdio.h这种编译器自带的不需要你确认) 如果引用了多个包,…...
自然语言处理(NLP)技术的例子
以下是几个自然语言处理(NLP)技术的例子: 机器翻译:机器翻译是将一种自然语言的文本转换成另一种语言的文本的过程。这种技术应用于在线翻译器、多语言聊天机器人、多语言搜索引擎等地方。 文本分类:文本分类将文本分…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
生成 Git SSH 证书
🔑 1. 生成 SSH 密钥对 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" 参数说明: -t rsa&#x…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
Visual Studio Code 扩展
Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后,命令 changeCase.commands 可预览转换效果 EmmyLua…...
高防服务器价格高原因分析
高防服务器的价格较高,主要是由于其特殊的防御机制、硬件配置、运营维护等多方面的综合成本。以下从技术、资源和服务三个维度详细解析高防服务器昂贵的原因: 一、硬件与技术投入 大带宽需求 DDoS攻击通过占用大量带宽资源瘫痪目标服务器,因此…...
32单片机——基本定时器
STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...
