合宙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)技术的例子: 机器翻译:机器翻译是将一种自然语言的文本转换成另一种语言的文本的过程。这种技术应用于在线翻译器、多语言聊天机器人、多语言搜索引擎等地方。 文本分类:文本分类将文本分…...
业务系统对接大模型的基础方案:架构设计与关键步骤
业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
scikit-learn机器学习
# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
uni-app学习笔记三十五--扩展组件的安装和使用
由于内置组件不能满足日常开发需要,uniapp官方也提供了众多的扩展组件供我们使用。由于不是内置组件,需要安装才能使用。 一、安装扩展插件 安装方法: 1.访问uniapp官方文档组件部分:组件使用的入门教程 | uni-app官网 点击左侧…...
从零手写Java版本的LSM Tree (一):LSM Tree 概述
🔥 推荐一个高质量的Java LSM Tree开源项目! https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree,专为高并发写入场景设计。 核心亮点: ⚡ 极致性能:写入速度超…...
7种分类数据编码技术详解:从原理到实战
在数据分析和机器学习领域,分类数据(Categorical Data)的处理是一个基础但至关重要的环节。分类数据指的是由有限数量的离散值组成的数据类型,如性别(男/女)、颜色(红/绿/蓝)或产品类…...
