goldage / lvgl8.0.1_cn_keyboard Goto Github PK
View Code? Open in Web Editor NEWThis project forked from xiaohua4758/lvgl8.0.1_cn_keyboard
A keyboard of chinese, with pinyin input method(IME)
This project forked from xiaohua4758/lvgl8.0.1_cn_keyboard
A keyboard of chinese, with pinyin input method(IME)
适用于单片机的lvgl简单中文键盘拼音输入法,使用QT5.14创建,直接打开即可运行模拟器 如果QT编译提示有错误,尝试在构建设置中重设目录:QT的左边栏-"项目"->"Desktop QT5.14.2 MinGW 32-bit"->"构建设置"->"概要"->"构建目录",填入一个目录,比如“../output”,参考“如有QT编译错误看这里.jpg” GUI: lvgl8.0.1 1. 功能 适用于单片机的中文拼音输入法,创建一个拼音输入的键盘,接受拼音输入,并显示拼音对应的候选字,通过触摸点击选择目标候选汉字,gui平台是lvgl8.0.1。 2. 原理 在lvgl原文件"lv_keyboard.c"基础上进行键盘的改写,新文件名为"lv_cn_keyboard.c",共同存放于"lvgl\src\extra\widgets\keyboard\"目录下,相关的对外函数名称以"lv_cn_xxx"开头。 如创建一个中文拼音输入法的函数名称为 lv_obj_t * lv_cn_keyboard_create(lv_obj_t * parent, const lv_font_t *cn_font)。 原官方文件"lv_keyboard.c"与本中文输入"lv_cn_keyboard.c"可根据实际情况自由选择使用,中文拼音输入法lv_cn_keyboard.c已经包含了官方lv_keyboard.c键盘的所有功能。 3. 涉及文件说明 (1) lvgl\src\extra\widgets\keyboard\lv_cn_keyboard.c,中文拼音输入法键盘控件源文件,可创建一个中文拼音输入法键盘控件 (2) user\tiny_pinyin.c,简单的拼音输入法,来源于网络 (3) myfont\my_cn_font1.c 由字体生成工具 Lvgl Font Tool V0.4 生成中文字库 (4) lvgl\examples\widgets\keyboard\lv_example_keyboard_1.c,使用中文拼音输入法键盘的简单应用例程 4. 使用说明 示例: (1) 创建键盘 static lv_obj_t *kb = NULL; lv_obj_t * ta; /*创建一个textarea来接收键盘输入*/ ta = lv_textarea_create(lv_scr_act()); .... if(NULL == kb){ /*使用lv_cn_keyboard_create创建键盘,注意是lv_cn_前缀,第二参数my_cn_font1是字库*/ kb = lv_cn_keyboard_create(lv_scr_act(), &my_cn_font1); /*可以选择使用lv_cn_keyboard_set_kb_type设置键盘类型,参数等于0时为英文键盘,等于1时为中文键盘*/ //lv_cn_keyboard_set_kb_type(0); } if(NULL != kb){ /*使用lv_cn_keyboard_set_textarea将键盘与textarea绑定,注意是lv_cn_前缀*/ lv_cn_keyboard_set_textarea(kb, ta); } (2) 删除键盘 完成输入任务后,可删除键盘来释放资源 lv_obj_del(kb); //删除键盘,以便释放键盘资源 kb = NULL; (3) 注意事项 a. 此拼音输入法是在lv_keyboard.c基础上修改,相关函数修改为lv_cn_前缀,键盘上的“En/Cn”键用于切换英文或中文输入法 b. lv_cn_keyboard_create函数与原lv_keyboard_create函数相比增加一个输入参数。 lv_obj_t * lv_cn_keyboard_create(lv_obj_t * parent, const lv_font_t *cn_font) 新增的第二个参数const lv_font_t *cn_font是中文字库,可通过lvgl官网教程制作,或者直接利用字体生成工具 Lvgl Font Tool V0.4 制作 c. 此拼音输入法仅允许一个实例运行,暂时不支持多个实例运行。 5. 有关不足 tiny_pinyin.c只是一个简单、资源占有极低、轻量级拼音输入法,仅能进行单字的候选,未有多字联想候选功能
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.