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

合宙Air724UG LuatOS-Air LVGL API控件-开关 (Switch)

开关 (Switch)

switch.png

示例代码

function event_handler(obj, event)
    if event == lvgl.EVENT_VALUE_CHANGED then
        print("State", lvgl.switch_get_state(obj))
    end
end

sw1 = lvgl.switch_create(lvgl.scr_act(), nil)
lvgl.obj_align(sw1, nil, lvgl.ALIGN_CENTER, 0, -50)
lvgl.obj_set_event_cb(sw1, event_handler)

sw2 = lvgl.switch_create(lvgl.scr_act(), sw1)
lvgl.switch_on(sw2, lvgl.ANIM_ON)
lvgl.obj_align(sw2, nil, lvgl.ALIGN_CENTER, 0, 50)

创建

开关的创建函数是 lvgl.switch_create

lvgl.switch_create(lvgl.scr_act(), nil)

开关.png

状态

开关最重要的就是状态设置以及获取了,状态设置主要是通过三个函数设置的,分别是:

lvgl.switch_on     -- 打开
lvgl.switch_off    -- 关闭
lvgl.switch_toggle -- 切换

切换就是将开关设置为相反的状态,这三个函数设置状态时都可以选择是否显示动画。
状态获取函数就是 lvgl.switch_get_state 了,通过返回 true false 来告知用户当前的状态。

lvgl.switch_get_state(sw)

事件

开关最常用的事件毫无疑问就是 lvgl.EVENT_VALUE_CHANGED 了。

function event_handler(obj, event)
    if event == lvgl.EVENT_VALUE_CHANGED then
        print("State", lvgl.switch_get_state(obj))
    end
end

lvgl.obj_set_event_cb(sw, event_handler)

jdfw.gif

API

lvgl.switch_create

调用lvgl.switch_create(par, copy)
功能创建一个开关对象
返回指向创建的开关的指针
参数
par指向对象的指针, 它将是新键对象的父对象
copy指向开关对象的指针, 如果不为 nil, 则将从其复制新对象

lvgl.switch_on

调用lvgl.switch_on(sw, anim)
功能打开开关
参数
sw指向微调框对象的指针
animlvgl.ANIM_ON 用动画设置值。lvgl.ANIM_OFF 立即更改值

lvgl.switch_off

调用lvgl.switch_off(sw, anim)
功能关闭开关
参数
sw指向微调框对象的指针
animlvgl.ANIM_ON 用动画设置值。lvgl.ANIM_OFF 立即更改值

lvgl.switch_toggle

调用lvgl.switch_toggle(sw, anim)
功能切换开关
参数
sw指向微调框对象的指针
animlvgl.ANIM_ON 用动画设置值。lvgl.ANIM_OFF 立即更改值

lvgl.switch_set_anim_time

调用lvgl.switch_set_anim_time(sw, anim_time)
功能设置开关的动画时间
参数
sw指向滑动条对象的指针
anim_time动画时间(以毫秒为单位)。

lvgl.switch_get_anim_time

调用lvgl.switch_get_anim_time(sw)
功能获取开关设置的动画时间
返回开关的动画时间
参数
sw指向开关对象的指针

lvgl.switch_get_state

调用lvgl.switch_get_state(sw)
功能获取开关的状态
返回开关的状态
参数
sw指向开关对象的指针

相关文章:

  • PV PVC in K8s
  • 30天入门Python(基础篇)——第2天:Python安装(保姆级)与IDE的认识与选择+详细安装教程
  • Python HTTP Server
  • 算法训练第五十九天
  • CSS:实现文字溢出显示省略号且悬浮显示tooltip完整信息
  • vue-elementPlus自动按需导入和主题定制
  • 【深度学习】 Python 和 NumPy 系列教程(一):Python基本数据类型:1、数字(整数、浮点数)及相关运算;2、布尔值
  • 将函数实现放到CPP报“无法解析的外部符号...”,系VS Bug
  • Flink从入门到精通之-05 DataStream API
  • 命名空间 namespace
  • 前端开发——Javascript的定义函数、事件处理、Math对象、Date对象
  • GPT-4老板:AI可能会杀死人类,已经出现我们无法解释的推理能力
  • CSS(三)
  • 华为nat配置实验:内网能够访问外网,内网服务器80端口映射出去
  • Linux使用:环境变量指南和CPU和GPU利用情况查看
  • 《C++那些事》Step By Step上手学习
  • CentOS8提高篇22:制作crontab计划任务,at一次性计划任务
  • Java云电子病历系统源码,提供电子病历在线制作、管理和使用的一体化电子病历
  • 【ansible】实施任务控制
  • 【愚人节专场】Java实现定时发送小情话
  • “2025未来地球:科学与应用大会”在江西景德镇开幕
  • 上海市进一步支持汽车置换更新!一图读懂补贴政策实施细则
  • 神二十发射时间藏着两彩蛋:恰逢东方红一号发射55周年和第十个“中国航天日”
  • 特朗普:无意解雇鲍威尔,但美联储应该降低利率
  • 叶辛秦文君进校园推广阅读
  • 上海一小学百名学生齐聚图书馆:纸质书的浪漫AI无法取代