LuatOS-SOC接口文档(air780E)--lvgl - LVGL图像库

lvgl.draw_mask_radius_param_t()

创建一个lv_draw_mask_radius_param_t

参数

返回值

返回值类型

解释

userdata

lv_draw_mask_radius_param_t指针

例子

local radius = lvgl.draw_mask_radius_param_t()

lvgl.draw_mask_radius_param_t_free(radius)

释放一个lv_draw_mask_radius_param_t

参数

返回值

例子

local lvgl.draw_mask_radius_param_t_free(radius)

lvgl.draw_mask_line_param_t()

创建一个lv_draw_mask_line_param_t

参数

返回值

返回值类型

解释

userdata

lv_draw_mask_line_param_t指针

例子

local line = lvgl.draw_mask_line_param_t()

lvgl.draw_mask_line_param_t_free(line)

释放一个lv_draw_mask_line_param_t

参数

返回值

例子

local lvgl.draw_mask_line_param_t_free(line)

lvgl.draw_mask_fade_param_t()

创建一个lv_draw_mask_fade_param_t

参数

返回值

返回值类型

解释

userdata

lv_draw_mask_fade_param_t指针

例子

local fade = lvgl.draw_mask_fade_param_t()

lvgl.draw_mask_fade_param_t_free(fade)

释放一个lv_draw_mask_fade_param_t

参数

返回值

例子

local lvgl.draw_mask_fade_param_t_free(fade)

lvgl.font_get(name)

获取内置字体

参数

传入值类型

解释

string

字体名称+字号, 例如 opposans_m_10

返回值

返回值类型

解释

userdata

字体指针

例子

local font = lvgl.font_get("opposans_m_12")

lvgl.font_load(path/spi_device,size,bpp,thickness,cache_size,sty_zh,sty_en)

从文件系统加载字体

参数

传入值类型

解释

string/userdata

字体路径/spi_device (spi_device为使用外置高通矢量字库芯片)

number

size 可选,字号 16-192 默认16(使用高通矢量字库)

number

bpp 可选 深度 默认4(使用高通矢量字库)

number

thickness 可选 粗细值 默认size * bpp(使用高通矢量字库)

number

cache_size 可选 默认0(使用高通矢量字库)

number

sty_zh 可选 选择字体 默认1(使用高通矢量字库)

number

sty_en 可选 选择字体 默认3(使用高通矢量字库)

返回值

返回值类型

解释

userdata

字体指针

例子

local font = lvgl.font_load("/font_32.bin")
--local font = lvgl.font_load(spi_device,16)(高通矢量字库)

lvgl.font_free(font)

释放字体,慎用!!!仅通过font_load加载的字体允许卸载,通过font_get获取的字体不允许卸载

参数

传入值类型

解释

string

字体路径

返回值

返回值类型

解释

userdata

字体指针

例子

local font = lvgl.font_load("/font_32.bin")
-- N N N N 操作
-- 确定字体不被使用,不被引用,且内存紧张需要释放
lvgl.font_free(font)

lvgl.obj_set_event_cb(obj, func)

设置组件的事件回调

参数

传入值类型

解释

userdata

lvgl组件指针

func

lua函数, 参数有2个 (obj, event), 其中obj是当前对象, event是事件类型, 为整型

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.obj_set_signal_cb(obj, func)

设置组件的信号回调

参数

传入值类型

解释

userdata

lvgl组件指针

func

lua函数, 参数有2个 (obj, signal), 其中obj是当前对象, signal是信号类型, 为整型

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.anim_set_exec_cb(anim, func)

设置动画回调

参数

传入值类型

解释

userdata

动画指针

userdata

lvgl组件指针

func

lua函数, 参数有2个 (obj, value), 其中obj是当前对象, signal是信号类型, 为整型

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.anim_set_ready_cb(anim, func)

设置动画回调

参数

传入值类型

解释

userdata

动画指针

userdata

lvgl组件指针

func

lua函数, 参数有1个 (anim), 其中anim是当前对象

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.anim_path_set_cb(path, func)

设置动画回调

参数

传入值类型

解释

userdata

动画指针

userdata

lvgl组件指针

func

lua函数, 参数有1个 (path), 其中path是当前对象

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.event_send(obj, ent)

发送事件给组件

参数

传入值类型

解释

userdata

组件指针

int

事件id, 例如 lvgl.EVENT_PRESSED

返回值

返回值类型

解释

bool

成功返回true, 对象已被删除的话返回false或者nil

int

底层返回值,如果obj为nil就返回nil

例子


lvgl.scr_act()

获取当前活跃的screen对象

参数

返回值

返回值类型

解释

指针

screen指针

例子

local scr = lvgl.scr_act()

lvgl.layer_top()

获取layer_top

参数

返回值

返回值类型

解释

指针

layer指针

例子


lvgl.layer_sys()

获取layer_sys

参数

返回值

返回值类型

解释

指针

layer指针

例子


lvgl.scr_load(scr)

载入指定的screen

参数

传入值类型

解释

userdata

screen指针

返回值

例子

    local scr = lvgl.obj_create(nil, nil)local btn = lvgl.btn_create(scr)lvgl.obj_align(btn, lvgl.scr_act(), lvgl.ALIGN_CENTER, 0, 0)local label = lvgl.label_create(btn)lvgl.label_set_text(label, "LuatOS!")lvgl.scr_load(scr)

lvgl.scr_load_anim(scr)

载入指定的screen并使用指定的转场动画

参数

传入值类型

解释

userdata

screen指针

返回值

例子

    local scr = lvgl.obj_create(nil, nil)local btn = lvgl.btn_create(scr)lvgl.obj_align(btn, lvgl.scr_act(), lvgl.ALIGN_CENTER, 0, 0)local label = lvgl.label_create(btn)lvgl.label_set_text(label, "LuatOS!")local scr2 = lvgl.obj_create(nil,nil)local btn2 = lvgl.btn_create(scr2)lvgl.obj_align(btn, scr2, lvgl.ALIGN_CENTER, 0, 20)local label2 = lvgl.label_create(btn2)lvgl.label_set_text(label2, "Btn2")lvgl.scr_load(scr)--sys.wait(1000);lvgl.scr_load_anim(scr2,lvgl.SCR_LOAD_ANIM_OVER_LEFT,100,100,false)
原函数:lv_scr_load_anim(lv_obj_t * new_scr, lv_scr_load_anim_t anim_type, uint32_t time, uint32_t delay, bool auto_del)

lvgl.theme_set_act(name)

设置主题

参数

传入值类型

解释

string

主题名称,可选值有 default/mono/empty/material_light/material_dark/material_no_transition/material_no_focus

返回值

返回值类型

解释

bool

成功返回true,否则返回nil

例子

-- 黑白主题
lvgl.theme_set_act("mono")
-- 空白主题
lvgl.theme_set_act("empty")

lvgl.sleep(enable)

LVGL休眠控制,暂停/恢复刷新定时器,目前只有105和EC618可以用

参数

传入值类型

解释

boolean

true暂停 false恢复

返回值

例子

lvgl.sleep(true)		--暂停刷新,系统可以休眠
lvgl.sleep(false)		--恢复刷新,系统不休眠

lvgl.init(w, h, lcd, buff_size, buff_mode)

初始化LVGL

参数

传入值类型

解释

int

屏幕宽,可选,默认从lcd取

int

屏幕高,可选,默认从lcd取

userdata

lcd指针,可选,lcd初始化后有默认值,预留的多屏入口

int

缓冲区大小,默认宽*10, 不含色深.

int

缓冲模式,默认0, 单buff模式, 可选1,双buff模式

返回值

返回值类型

解释

bool

成功返回true,否则返回false

例子


lvgl.anim_create()

创建并初始化一个anim

参数

返回值

返回值类型

解释

userdata

anim指针

例子

local anim = lvgl.anim_create()

lvgl.anim_free(anim)

释放一个anim

参数

返回值

例子

local lvgl.anim_free(anim)

lvgl.anim_path_t()

创建一个lv_anim_path_t

参数

返回值

返回值类型

解释

userdata

lv_anim_path_t指针

例子

local anim_path_t = lvgl.anim_path_t()

lvgl.anim_path_t_free(anim_path_t)

释放一个lv_anim_path_t

参数

返回值

例子

local lvgl.anim_path_t_free(anim_path_t)

lvgl.anim_set_path_str(anim, tp)

设置动画路径方式

参数

传入值类型

解释

userdata

动画指针

string

类型, 支持 linear/ease_in/ease_out/ease_in_out/overshoot/bounce/step

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.qrcode_create(parent, size, dark_color, light_color)

创建qrcode组件

参数

传入值类型

解释

userdata

父组件

int

长度,因为qrcode是正方形

int

二维码中数据点的颜色, RGB颜色, 默认 0x3333ff

int

二维码中背景点的颜色, RGB颜色, 默认 0xeeeeff

返回值

返回值类型

解释

userdata

qrcode组件

例子

-- 创建并显示qrcode
local qrcode = lvgl.qrcode_create(scr, 100)
lvgl.qrcode_update(qrcode, "https://luatos.com")
lvgl.obj_align(qrcode, lvgl.scr_act(), lvgl.ALIGN_CENTER, -100, -100)

lvgl.qrcode_update(qrcode, cnt)

设置qrcode组件的二维码内容,配合qrcode_create使用

参数

传入值类型

解释

userdata

qrcode组件,由qrcode_create创建

string

二维码的内容数据

返回值

返回值类型

解释

bool

更新成功返回true,否则返回false. 通常只有数据太长无法容纳才会返回false

例子


lvgl.qrcode_delete(qrcode)

删除qrcode组件

参数

传入值类型

解释

userdata

qrcode组件,由qrcode_create创建

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.style_t()

创建一个style

参数

返回值

返回值类型

解释

userdata

style指针

例子

local style = lvgl.style_t()
lvgl.style_init(style)

lvgl.style_create()

创建一个style并初始化

参数

返回值

返回值类型

解释

userdata

style指针

例子

local style = lvgl.style_create()

lvgl.style_list_create()

创建一个style_list

参数

返回值

返回值类型

解释

userdata

style指针

例子

local style_list = lvgl.style_list_create()

lvgl.style_list_t()

创建一个style_list

参数

返回值

返回值类型

解释

userdata

style指针

例子

local style = lvgl.style_list_t()

lvgl.style_delete(style)

删除style,慎用,通常不会执行删除操作

参数

传入值类型

解释

userdata

style指针

返回值

例子

local style = lvgl.style_create()
-- ...
-- ...
-- lvgl.style_delete(style)

lvgl.style_list_delete(style)

删除style_list,慎用,通常不会执行删除操作

参数

传入值类型

解释

userdata

style指针

返回值

例子

local style_list = lvgl.style_list_create()
-- ...
-- ...
-- lvgl.style_list_delete(style_list)

lvgl.demo_benchmark()

lvgl benchmark demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_benchmark()

lvgl.demo_keypad_encoder()

lvgl keypad_encoder demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_keypad_encoder()

lvgl.demo_music()

lvgl music demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_music()

lvgl.demo_printer()

lvgl printer demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_printer()

lvgl.demo_stress()

lvgl stress demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_stress()

lvgl.demo_widgets()

lvgl widgets demo

参数

返回值

返回值类型

解释

nil

无返回值

例子

lvgl.init()
lvgl.demo_widgets()

lvgl.indev_drv_register(tp, dtp)

注册输入设备驱动

参数

传入值类型

解释

string

设备类型,当前支持”pointer”,指针类/触摸类均可,”keyboard”,键盘类型

string

设备型号,当前支持”emulator”,模拟器类型

返回值

返回值类型

解释

bool

成功返回true,否则返回false

例子

lvgl.indev_drv_register("pointer", "emulator")

lvgl.indev_point_emulator_update(x, y, state)

更新模拟输入设备的坐标数据

参数

传入值类型

解释

int

x坐标,以左上角为0,右下角为最大值

int

y坐标,以左上角为0,右下角为最大值

int

状态, 0 为 释放, 1 为按下

返回值

返回值类型

解释

nil

无返回值

例子

-- 模拟在屏幕上的点击,通过timeout模拟长按和短按
sys.taskInit(function(x, y, timeout)lvgl.indev_point_emulator_update(x, y, 1)sys.wait(timeout)lvgl.indev_point_emulator_update(x, y, 0)
end, 240, 120, 50)

lvgl.indev_kb_update(key)

更新键盘输入设备的按键值

参数

传入值类型

解释

int

按键值,默认为0,按键抬起

返回值

返回值类型

解释

nil

无返回值

例子


lvgl.gif_create(parent, path)

创建gif组件

参数

传入值类型

解释

userdata

父组件,可以是nil,但通常不会是nil

string

文件路径

返回值

返回值类型

解释

userdata

组件指针,若失败会返回nil,建议检查

例子

local gif = lvgl.gif_create(scr, "S/emtry.gif")
if gif thenlog.info("gif", "create ok")
end

lvgl.gif_restart(gif)

重新播放gif组件

参数

传入值类型

解释

userdata

gif组件支持, 由gif_create方法返回

返回值

返回值类型

解释

nil

无返回值

例子

local gif = lvgl.gif_create(scr, "S/emtry.gif")
if gif thenlog.info("gif", "create ok")
end

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

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

相关文章

【云原生】portainer管理多个独立docker服务器

目录 一、portainer简介 二、安装Portainer 1.1 内网环境下: 1.1.1 方式1:命令行运行 1.1.2 方式2:通过compose-file来启动 2.1 配置本地主机(node-1) 3.1 配置其他主机(被node-1管理的节点服务器&…

c++类和对象(1)

目录 目录: 1.类的定义 1.1:类的语法及相关概念 1.2:类的两种定义方式 1.3:类的成员变量名命名规范 2.类的访问限定符 2.1:三种访问限定符关键字引入 2.2:访问限定符的语法说明 2.3:c中struct与class的区别(面试常考) 3.类的作用域 4.类的实例化 5.类对象 5.1:类对…

uniapp实现webview页面关闭功能

实现思路: 1.关闭按钮是使用原生button添加的close属性。(见page.json页面) 2.监听关闭按钮的方法。(onNavigationBarButtonTap) 3.写实现关闭webview所有页面的逻辑。 废话不多说,直接上代码 1.page.…

《GB/T 8566-2022/ISO/IEC/IEEE:系统与软件工程生存周期过程》国家标准解读,附下载地址

关于企业架构、软件工程等相关内容,基本在行业内工作一段时间都能解释出各自的理解,网络资料更是知识爆炸,看似哪一种都对,其实相对都是个人理解,算不上严谨。 上周工作中涉及架构的企业标准编制审查,对严…

网工内推 | 国企,解决方案工程师,最高30k,有软考证书优先

01 中电信数智科技有限公司海南分公司 招聘岗位:解决方案经理(ICT) 职责描述: 1、负责调动前后端资源做好全省ICT业务的售前支撑服务工作。 2、根据实际项目需求,主动协同客户渠道开展ICT项目商机挖掘,促进…

用友U8SMSProxy -SQL注入漏洞

0x01 漏洞介绍 用友GRP-U8 R10政务管理软件是由用友政务公司基于云技术所推出的第十代政务产品。这款产品继承了用友R9、R9i、U8等行政事业版产品的各项优点,并融合了全国广大用户的最佳实践应用。它旨在为政府财政部门、社保部门、卫生部门、教育部门、民政部门、党…

【uniapp+云函数调用】人脸识别,实人认证,适用于app,具体思路解析,已实现

2023.10.8 需求: uniapp开发的app项目中使用人脸识别 app项目都是第一次搞,更别提人脸识别了。目前已有的就是Dcloud账号已申请,实现需求的时间没那么紧迫 此篇会详细记录从0到1的过程 2023.10.24 今天开始探究实现的过程 可能会记录的有些冗余 效果图如下: uniapp开发指南…

整个自动驾驶小车001:概述

材料: 1,树梅派4b,作为主控,这个东西有linux系统,方便 2,HC-S104超声波模块,我有多个,不少于4个,我可以前后左右四个方向都搞一个 3,l298n模块,…

6、PostgreSQL 数据类型之一:数字类型和货币类型

PostgreSQL 作为一个强大的开源关系型数据库管理系统,本身支持多种数据类型,包括标准 SQL 数据类型以及一些扩展数据类型。 PostgreSQL 支持多种数据类型的设计理念是为了满足不同应用场景的需求,提供更大的灵活性和数据处理能力。原因如下&…

如何驾驭ChatGPT:掌控有效对话!

📢📢📢📣📣📣 哈喽!大家好,我是【一心同学】,一位上进心十足的【后端领域博主】!😜😜😜 ✨【一心同学】的写作风格&#x…

【Linux】第三站:Linux基本指令(二)

文章目录 一、通配符 *二、man指令三、cp指令1.先给一个文件里面写入数据2. cp指令拷贝普通文件3.cp指令拷贝文件目录4.常用的选项总结 四、mv指令1.mv命令简介2.使用 五、一些插曲1.一些注意事项2.指令的本质3.再谈输出重定向4.追加重定向5.输入重定向 六、cat指令七、more指令…

springboot配置redis、Spring cache

1.Jedis库 依赖库 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>5.0.2</version> </dependency>使用案例&#xff1a; Testpublic void jedis(){Jedis jedis new Jedis("127…

【Spring Boot系列】- Spring Boot事务应用详解

【Spring Boot系列】- Spring Boot事务应用详解 一、事务简介 事务&#xff08;Transaction&#xff09;是数据库操作最基本单元&#xff0c;逻辑上一组操作&#xff0c;要么都成功。如果有一个操作失败。则事务操作都失败&#xff08;回滚&#xff08;Rollback&#xff09;&…

光流法动目标检测

目录 前言 一、效果展示 二、光流法介绍 三、代码展示 总结 前言 动目标检测是计算机视觉领域的一个热门研究方向。传统的方法主要基于背景建模&#xff0c;但这些方法对于光照变化、遮挡和噪声敏感。因此&#xff0c;研究人员一直在寻找更加鲁棒和有效的技术来解决这一问题。…

C# 串口通信简单示例

C# 简单串口通信示例 串口通信示例代码 串口通信 C# 串口通信主要操作&#xff1a; 命名空间&#xff1a;using System.IO.Ports;获取端口&#xff1a;string[] ports System.IO.Ports.SerialPort.GetPortNames();设置端口名&#xff1a;serialPort1.PortName “COM1”; //…

vue3中常用的新组件

一、Fragment vue2中&#xff0c;组件必须有一个根标签 vue3中&#xff0c;组件可以没有根标签&#xff0c;内部会将多个标签包含在一个Fragment虚拟元素中。 优点&#xff1a;减少标签层级。 二、Teleport&#xff08;传送门&#xff09; 作用&#xff1a;将组件的 html …

渗透测试tomcat错误信息泄露解决办法

解决方法&#xff1a; 1、使用tomcat8.5.16&#xff0c;会重定向非法url到登录url 2、配置server.xml&#xff0c;加上 <Valve className"org.apache.catalina.valves.ErrorReportValve" showReport"false" showServerInfo"false" />配置…

C++ 模板和泛型编程详解

C中的模板和泛型编程是非常重要的概念。模板是一种将数据类型作为参数的通用程序设计方法。它们允许开发人员编写可以处理各种数据类型的代码&#xff0c;而无需为每种数据类型编写不同的代码。下面介绍了一些关于C中模板和泛型编程的重要知识点 模板的定义 模板是一种通用程序…

opencalib中lidar2camera安装记录

目录 一、opencalib安装 二、lidar2camera的安装 三、测试运行 四、出现过的问题 一、opencalib安装 代码地址&#xff1a;https://github.com/PJLab-ADG/SensorsCalibration/blob/master/README.md # pull docker image sudo docker pull scllovewkf/opencalib:v1 # Aft…

【计算机网络】HTTP 协议的基本格式以及 fiddler 的用法

HTTP协议的基本格式如下&#xff1a; 1.请求行&#xff1a; 包括请求THHP协议的版本、请求URI&#xff08;资源路径&#xff09;和HTTP方法&#xff08;如GET、POST、PUT、DELETE等&#xff09; GET/example.html HTTP/1.1 GET表示请求方法&#xff0c;/example.html表示请求的…