本系列图文连载,第8话
本期我们来学习C语言(水一期)
实现效果
本期与上一期关系紧密,重复的地方我就不讲了
设计界面
使用与上一话相同的方法获取lvgl代码
- <blockquote>static void screen_btn_1_event_handler (lv_event_t *e)
复制代码
下面我们来分析一下需求
要实现计数器的功能跟把大象塞冰箱里一样,需要三步:
1. 声明一个整数变量a
2. a++
3. 将int转成字符串,让label显示出来
想不到啊,C语言竟然没有字符串这个概念!
c语言是没有字符串类型的,只有字符型 char (可改) c 语言表示字符串只能用数组或者指针 (不可改) 俺没学过指针,啥玩意儿??? 用惯C#里的ToString()函数的我惊呆了 c语言中整数转字符串的方法非常多 https://www.runoob.com/w3cnote/c-int2str.html
这里使用 sprintf(字符串, "%d", 整数); 转换
贴上完整代码 - int a=0; //声明整数
- char string[50]; //声明字符数组
- static void screen_btn_1_event_handler (lv_event_t *e)
- {
- lv_event_code_t code = lv_event_get_code(e);
- switch (code) {
- case LV_EVENT_CLICKED:
- {
- a++; //自加
- sprintf(string, "%d", a); //整数转换字符串
-
- lv_label_set_text(guider_ui.screen_label_1, string); //在label中显示
- break;
- }
- default:
- break;
- }
- }
- void custom_init(lv_ui *ui)
- {
- lv_obj_add_event_cb(ui->screen_btn_1, screen_btn_1_event_handler, LV_EVENT_ALL, NULL);
- }
复制代码
是不是非常简单,等你们评论区交作业
|