LVGL 最简单搭建的PC模拟器 codeblocks 本地文件系统和windows键盘输入 设置的方法
·
正式告别了micropython,踏上进阶的路途,开始玩c了,先玩个lvgl,先琢磨如何搭建优雅的环境。
老规矩啃官网docs,官网推荐了pc的几种模拟器,本来很想用vscode,但是无奈推荐在linux下用,windows下只有codeblocks和visual studio,本着简单小巧起见果断选择前者(python我都用thonny,你让我去用visual studio?不可能!绝对不可能!)
搭建环境真的超级简单,git仓库,安装codeblocks就行了,按文档来就行,一点坑没有,不过装好了之后发现了两个问题:
一是没有文件系统,咋办?好在网友已经给了解决方法:
csdn解决方法
给我抄作业呀,这位老哥自己弄了个windows系统驱动,666把c和h头文件导入codeblocks工程就行了,这里注意引脚文件的时候盘符是S: 而不是0:具体什么原理懒得研究了,能用就行,反正是为了学习搭建的简易模拟环境而已。
二是默认不能从电脑的键盘输入,这个咋整?
一顿找,最后不负众望在官方仓库的issue中找到了,别说还真挺难找!!!
仓库issue
本来都没人管的,知道最后百问网的老哥给出了解决方案,不得不说百问网真的有点东西啊!
先加头文件
#include "lv_drivers/win32drv/win32drv.h"
好哇,原来都有现成的,没用上而已
然后加入这几行就行了
lv_group_t * g = lv_group_create();
lv_group_set_default(g);
lv_indev_set_group(lv_win32_keypad_device_object, g);
搞定了!好简单!
完整例子:
#include "my_gui.h"
#include "lvgl.h"
#include "lv_drivers/win32drv/win32drv.h"
static void lv_example_textarea(void)
{
lv_group_t * g = lv_group_create();
lv_group_set_default(g);
lv_indev_set_group(lv_win32_keypad_device_object, g);
lv_obj_t *textarea_name = lv_textarea_create(lv_scr_act());
lv_obj_set_width(textarea_name, 400);
lv_obj_set_style_text_font(textarea_name, &lv_font_montserrat_30, LV_PART_MAIN);
lv_obj_align(textarea_name, LV_ALIGN_CENTER, 0, 0 );
}
void my_gui(void)
{
lv_example_textarea();
}
感觉用codeblocks的还是太少了,关注度不高,自动补全用的挺舒服,我以前居然都用thonny 不带自动补全的硬写代码,佩服我自己啊
更多推荐


所有评论(0)