提示:本博客作为学习笔记,有错误的地方希望指正

文章目录

  • 一、textarea 简介
    • 1.1概述 Overview
    • 1.2部分和风格 Parts and Styles
    • 1.3使用 Usage
      • 1.3.1创建消息框 Create a message box
      • 1.3.2获取部件 Get the parts
      • 1.3.3关闭消息框Close the message box
    • 1.4事件 Events
    • 1.5按键 Keys
  • 二、msgbox API
  • 三、示例
    • 3.1示例实现数字按键输入

一、textarea 简介

1.1概述 Overview

  “消息”框充当弹出窗口。它们由一个背景容器、一个标题、一个可选的关闭按钮和一个文本构建而成和可选的按钮。文本将自动分成多行,高度将自动设置为包括文本和的按钮。消息框可以是模态的(阻止屏幕其余部分的单击),也可以不是模态的。

1.2部分和风格 Parts and Styles

  
消息框是由其他小部件构建的,因此您可以查看这些小部件的文档以了解详细信息。
•背景:lv_obj
•关闭按钮:lv_btn
•标题和文本:lv_label
•按钮:lv_btnmatrix

1.3使用 Usage

1.3.1创建消息框 Create a message box

  Lv_msgbox_create (parent, title, txt, btn_txts[], add_close_btn)创建一个消息框。
如果parent为NULL,消息框将是模态的。Title和TXT是标题和文本的字符串。btn_txts []
是一个带有按钮文本的数组。例如const char * btn_txts[] = {“Ok”, “Cancel”, NULL}。
Add_colse_btn可以为true或false来添加/不添加关闭按钮。

1.3.2获取部件 Get the parts

  消息框的构建块可以通过以下函数获得:

lv_obj_t * lv_msgbox_get_title(lv_obj_t * mbox);
lv_obj_t * lv_msgbox_get_close_btn(lv_obj_t * mbox);
lv_obj_t * lv_msgbox_get_text(lv_obj_t * mbox);
lv_obj_t * lv_msgbox_get_btns(lv_obj_t * mbox);

1.3.3关闭消息框Close the message box

  Lv_msgbox_close (msgbox)关闭(删除)消息框。

1.4事件 Events

  如果其中一个被点击,LV_EVENT_VALUE_CHANGED将由按钮发送。在按钮上启用了LV_OBJ_FLAG_EVENT_BUBBLE,因此您可以将事件添加到消息框本身。在事件处理程序中,lv_event_get_target(e)将返回Button矩阵和lv_event_get_current_target(e)将返回消息框。
lv_msgbox_get_active_btn(msgbox)和lv_msgbox_get_active_btn_text(msgbox)可以用来获得索引和文本的点击按钮。

1.5按键 Keys

  键对关闭按钮和按钮矩阵有影响。如果需要,可以手动将它们添加到组中。

二、msgbox API

/******************
* 创建一个消息框对象
* @param父指针父或NULL创建一个全屏的模态消息框
* @param title消息框的标题
* @param TXT消息框的文本
* @param btn_txts按钮作为一个以“”元素结束的文本数组。例如:{"btn1", "btn2", ""}
* @param add_close_btn true:添加一个关闭按钮
* @return指向消息框对象的指针
*******************/
lv_obj_t * lv_msgbox_create(Lv_obj_t * parent, const char * title, const char * txt, const char * btn_txts[],bool add_close_btn);
//获取消息框的标题
lv_obj_t * lv_msgbox_get_title(Lv_obj_t * obj);
//获取消息框的关闭按钮
lv_obj_t * lv_msgbox_get_close_btn(Lv_obj_t * obj);
//获取消息框的文字内容
lv_obj_t * lv_msgbox_get_text(Lv_obj_t * obj);
//获取消息框的目录
lv_obj_t * lv_msgbox_get_content(Lv_obj_t * obj);
//获取消息框的按钮
lv_obj_t * lv_msgbox_get_btns(Lv_obj_t * obj);/**
* 获取所选按钮的索引
* @param mbox消息框对象
* @返回按钮的索引(LV_BTNMATRIX_BTN_NONE:如果未设置)
*/
uint16_t lv_msgbox_get_active_btn(lv_obj_t * mbox);
//获取活跃的按键文本
const char * lv_msgbox_get_active_btn_text(lv_obj_t * mbox);
//关闭消息框
void lv_msgbox_close(lv_obj_t * mbox);
//关闭消息框
void lv_msgbox_close_async(lv_obj_t * mbox);

三、示例

3.1示例实现数字按键输入

static void event_cb(lv_event_t * e)
{lv_obj_t * obj = lv_event_get_current_target(e);LV_LOG_USER("Button %s clicked", lv_msgbox_get_active_btn_text(obj));
}void lv_example_msgbox_1(void)
{static const char * btns[] ={"Apply", "Close", ""};//创建按钮字符lv_obj_t * mbox1 = lv_msgbox_create(NULL, "Hello", "This is a message box with two buttons.", btns, true);lv_obj_add_event_cb(mbox1, event_cb, LV_EVENT_VALUE_CHANGED, NULL);lv_obj_center(mbox1);
}

ESP32 LVGL8.1 ——msgbox 消息框 (msgbox 28)相关推荐

  1. 5. VBA消息框(MsgBox)

    完整版下载链接: https://download.csdn.net/download/xijinno1/87716168 MsgBox函数显示一个消息框,并等待用户点击一个按钮,然后根据用户点击的按 ...

  2. vba:消息框基础,msgbox

    常量 常量值 说明 vbOKOnly 0 只显示"确定"按钮(缺省值) VbOKCancel 1 显示"确定"和"取消"按钮 VbAbort ...

  3. python消息框设置_Python Tkinter消息框(附带实例讲解)

    在 messagebox 模块下提供了大量工具函数来生成各种消息框,这些消息框的结构大致如图 1 所示. 图 1 消息框的结构 在默认情况下,开发者在调用 messagebox 的工具函数时只要设置提 ...

  4. 金蝶EAS 弹出消息框

    MsgBox类提供了几种类型的消息框来弹出提示消息, 一般有showInfo(),showWarning(),showError(),showConfirm2()  等等.每种方法都有传入不同参数的重 ...

  5. Qt学习之路之QMessageBox消息框

    下面是 QMessageBox 的 实例: 开发环境: VS 2013, Qt版本: 5.4.0 下面附上代码: #include <QtWidgets/QApplication> #in ...

  6. 在用户控件中弹出消息框的方法

    以下语句可以弹出消息框, 如有不妥,请指正! ScriptManager.RegisterStartupScript(this, GetType(), "js", "al ...

  7. [moka同学笔记转载]Yii 设置 flash消息 创建一个渐隐形式的消息框

    来源:http://www.cnblogs.com/xp796/p/5481004.html Yii 设置 flash消息 创建一个渐隐形式的消息框 1 /*适用情况:比如提交一个表单,提交完成之后在 ...

  8. .NET MessageBox 网页弹出消息框

    方法一:     #region Alert 弹出消息框  /// <summary>        /// 弹出消息框        /// </summary>       ...

  9. mshta命令用法示例(在dos命令弹出消息框)

    JS: 复制代码代码如下: mshta vbscript:window.execScript("alert('hello world!');","javascript&q ...

  10. 使用jQuery开发messager消息框插件

    1.插件使用 首先引入jquery库,然后引入dialog.js.dialog.css.messager.js.messager.css,如下: 1 <script type="tex ...

最新文章

  1. python 把一个字典赋值给一个空的字典,或者是列表赋值给一个空的列表显示黄色警告
  2. javascript弹出div(一)
  3. YUV与RGB互转各种公式 (YUV与RGB的转换公式有很多种,请注意区别!!!)
  4. Effective Java~36. 用EnumSet 代替位域
  5. 16_python基础—面向对象基础
  6. maven的依赖和聚合
  7. 状态模式(Strategy Pattern)
  8. 百度网盘kbengine - warring项目下载地址
  9. catia如何将曲面加厚变为实体_?在CATIA中快速画一个大众车标
  10. 查看docker镜像内部端口号_DOCKER 常用命令
  11. java索引越界异常_索引越界异常java
  12. 神经网络 游戏,神经连接游戏
  13. mapbox 导航_散步、骑行线路随时可查!拱墅19条绿道实名确认,还有“魔鬼导航员”带你走……...
  14. 深入理解Android系统网络架构
  15. 计算机的串口波特率,什么是波特率_波特率9600是什么意思_串口通信为什么要设置波特率?...
  16. [再寄小读者之数学篇](2014-06-23 向量公式)
  17. 执行力:用良好的习惯,确保自己的执行力
  18. 【基础教程】基于Matlab画花式箱体图
  19. 【CCF-CSP】201512-4 送货
  20. AE基础知识-如何使用Ae CC加载动画

热门文章

  1. 设置cpolar远程访问本地网页
  2. win7设置定时开关机
  3. 网页编程语言,网页编程语言大全介绍。
  4. 好用的菜单栏翻译软件Bob使用教程,Bob怎么打开录屏权限
  5. go get xxx timeout
  6. 复杂边坡的ansys三维建模
  7. mysql-22.MySQL有哪些“饮鸩止渴”提高性能的方法?
  8. 中国经济刺激计划将提振大宗商品
  9. [转]杀毒软件的引擎
  10. sharelist+RaiDriver将阿里云盘映射到本地磁盘