具体来说,如果按键值是LV_KEY_ESC,则会删除按钮组和系统设置对象,并显示桌面界面;而如果按键值是LV_KEY_ENTER,则会清除系统设置对象的内容,删除按钮组,更新标题为"add device",并调用lv_add_device函数来添加设备。通过这种方式,该代码实现了对系统设置菜单按钮的灵活事件处理。事件处理:在lv_sys_add_dev...
lvgl.KEY_RIGHT/UP/LEFT/RIGHT - 在按钮之间导航以选择一个 lvgl.KEY_ENTER - 按下/释放所选按钮 进一步了解 按键。 范例# 简单按钮矩阵# 上述效果的示例代码: local function event_handler(obj, event) if(event == lvgl.EVENT_VALUE_CHANGED) then local txt = lvgl.btnmatrix_get_active_btn_text(obj...
LV_PART_SCROLLBAR当要展示的文本大于部件的大小时,显示的滚动条部分。 LV_PART_SELECTED选中文本时,突出显示的部分。label只能使用 text_color 和 bg_color 样式属性。 创建标签:lv_obj_t * label = lv_label_create(parent); 1.1 设置显示文本 创建了标签部件之后我们就可以设置文本来显示。
lv.PART.CUSTOM_FIRST可以从这里添加自定义部件。 state# lv.STATE.DEFAULT正常, 释放状态默认状态 lv.STATE.CHECKED切换或者选中状态 lv.STATE.FOCUSED被按键或者编码器聚焦/被触摸屏或鼠标点击 lv.STATE.FOCUS_KEY被按键或者编码器聚焦但不是被触摸屏或鼠标点击 lv.STATE.EDITED被编码器编辑 lv.STATE.HOVERED鼠标悬...
LV_INDEV_TYPE_KEYPAD可以传递以下几种状态,如果可能我们可以连接一个真正的键盘来传递所有的值。LV_KEY_NEXT 聚焦到下一个对象 LV_KEY_PREV 聚焦到上一个对象 LV_KEY_ENTER 触发 LV_EVENT_PRESSED/CLICKED/LONG_PRESSED 等事件 LV_KEY_UP 增加值或向上移动 LV_KEY_DOWN 减少值或向下移动 LV_KEY_RIGHT 增加...
LV_KEY_RIGHT/UP-如果启用了切换,则进入切换状态。 LV_KEY_LEFT/DOWN-如果启用了切换,则进入非切换状态。 请注意, LV_KEY_ENTER 的状态已转换为 LV_EVENT_PRESSED/PRESSING/RELEASED 等。 3、范例 简单的按钮 创建两个简单的按钮 上述效果的示例代码: #include "../../../lv_examples.h" #include #if...
color_chroma_key 在 chrome 键控图像上将被绘制为透明的颜色。(默认为 lv_conf.h 中的 LV_COLOR_TRANSP ) user_data 驱动程序的自定义用户数据。可以在 lv_conf.h 中修改其类型。 anti-aliasing 使用抗锯齿(anti-aliasing)(边缘平滑)。缺省情况下默认为 lv_conf.h 中的 LV_ANTIALIAS 。
data->state = LV_INDEV_STATE_PR; switch (msgbyte) { case 0: data->key = LV_KEY_PREV; break; case 1: data->key = LV_KEY_NEXT; break; case 2: data->key = LV_KEY_ENTER; break; case 3: data->key = LV_KEY_ENTER; break; ...
- lv_indev.c indev_keypad_proc() 不同的输入类型 处理流程略有不同 - 预定义键: - LV_KEY_NEXT 聚焦到下一个对象 - LV_KEY_LEFT 减少值或向左移动 - LV_KEY_RIGHT 增加值或向右移动 - LV_KEY_ENTER 触发 + 第三 所有按键发送到一个自定义事件 统一处理所有按键事件 ...
首先我们要实现按键的驱动,比如物理按键有四个,左、右、退出和确定,分别对应LV_KEY_LEFT、LV_KEY_RIGHT、LV_KEY_ESC和LV_KEY_ENTER。 对于硬件上来说,在按键处接了电容,所以不用消抖。我们就打开硬件上按键所对应引脚的上升沿/下降沿中断,然后在中断中返回我们的按键即可。这里我们默认数字0为没有任何按键按下...