lvgl_t113 0.1
t113-s3 86盒的LVGL桌面时钟程序
载入中...
搜索中...
未找到
message_page.c
浏览该文件的文档.
1
22#include <pthread.h>
23#include <time.h>
24#include <sys/time.h>
25#include "home_page.h"
26
27#include "source/img/home.h"
28
29static lv_coord_t hor_res = 480;
30static lv_coord_t ver_res = 480;
31static lv_coord_t rect_width =(lv_coord_t)((float)480 * 0.2f);
32
34
40static void home_img_clicked_callback(lv_event_t *e){
41 LV_LOG_USER("Clicked");
42 lv_scr_load_anim(HomePage_OBJ, LV_SCR_LOAD_ANIM_FADE_ON, 200, 0, false);
43}
44
50
51 MessagePage_OBJ=lv_obj_create(NULL);
52 lv_obj_set_size(MessagePage_OBJ, LV_HOR_RES, LV_VER_RES);
53 static lv_style_t style_rect_back;
54 lv_style_init(&style_rect_back); // 初始化样式
55 lv_style_set_bg_color(&style_rect_back, lv_color_hex(0xe3ecf4));
56 lv_obj_add_style(MessagePage_OBJ, &style_rect_back, 0); // 设置背景颜色
57
58 static lv_style_t Title_style;
59 lv_obj_t *titlelabel = lv_label_create(MessagePage_OBJ);
60 lv_label_set_text(titlelabel, "Sticky note");
61 lv_obj_align(titlelabel, LV_ALIGN_CENTER, 0, 0);
62 lv_style_set_text_font(&Title_style, &lv_font_montserrat_32);
63 // lv_style_set_text_color(&Title_style, lv_color_white());
64 lv_obj_add_style(titlelabel, &Title_style, 0);
65 lv_obj_align(titlelabel, LV_ALIGN_TOP_LEFT, 20, 20);
66 static lv_style_t style_shadow;
67 lv_style_init(&style_shadow);
68 lv_style_set_text_opa(&style_shadow, LV_OPA_30);
69 lv_style_set_text_color(&style_shadow, lv_color_black());
70 lv_obj_t * shadow_label = lv_label_create(MessagePage_OBJ);
71 lv_obj_add_style(shadow_label, &style_shadow, 0);
72 lv_label_set_text(shadow_label, lv_label_get_text(titlelabel));
73 // lv_obj_align(shadow_label, LV_ALIGN_CENTER, 0, 0);
74 lv_style_set_text_font(&style_shadow, &lv_font_montserrat_32);
75 lv_obj_align_to(shadow_label, titlelabel, LV_ALIGN_TOP_LEFT, 2, 2);
76
77 static lv_style_t content_style;
78 lv_obj_t *contentlabel = lv_label_create(MessagePage_OBJ);
79 lv_label_set_text(contentlabel, "My Name:Chen Shuo\n"
80 " Away from my desk.\n"
81 " Please call for urgent matters:\n"
82 " +86 19861557280,\n"
83 " or contact via DingTalk/E-Mobile.");
84 lv_obj_align(contentlabel, LV_ALIGN_CENTER, 0, 0);
85 lv_style_set_text_font(&content_style, &lv_font_montserrat_20);
86 // lv_style_set_text_color(&content_style, lv_color_white());
87 lv_obj_add_style(contentlabel, &content_style, 0);
88 lv_obj_align(contentlabel, LV_ALIGN_LEFT_MID, 25, 0);
89
90 static lv_style_t style_rect;
91 lv_obj_t *rect;
92 lv_color_t c = lv_color_hex(0x71a2c6); // 修改颜色值
93 lv_style_init(&style_rect); // 初始化样式
94 lv_style_set_bg_color(&style_rect, c); // 设置颜色
95 lv_style_set_width(&style_rect, rect_width); // 设置宽度
96 lv_style_set_height(&style_rect, ver_res); // 设置高度
97 lv_style_set_radius(&style_rect, 0); // 设置圆角
98 // lv_style_set_opa(&style_rect,LV_OPA_COVER); //设置透明度
99 lv_style_set_shadow_width(&style_rect, 25); // 设置阴影宽度
100 lv_style_set_shadow_ofs_x(&style_rect, -3); // 设置水平偏移
101 // lv_style_set_shadow_color(&style_rect,lv_palette_main(LV_PALETTE_NONE));//设置阴影颜色
102 lv_style_set_border_width(&style_rect, 0); // 设置边框宽度
103 rect = lv_obj_create(MessagePage_OBJ);
104 lv_obj_align(rect, LV_ALIGN_TOP_RIGHT, 0, 0);
105 lv_obj_add_style(rect, &style_rect, 0);
106
107 lv_obj_t *home_img_btn = lv_imgbtn_create(MessagePage_OBJ); // 创建在当前活动的屏幕
108 // 设置正常状态下的图片
109 lv_imgbtn_set_src(home_img_btn, LV_IMGBTN_STATE_RELEASED, &home, NULL, NULL);
110 // lv_imgbtn_set_src(calendar_img_btn, LV_IMGBTN_STATE_CHECKED_RELEASED, NULL, &calendar, NULL);
111 lv_obj_align(home_img_btn, LV_ALIGN_TOP_RIGHT, -1 * rect_width / 2.0 + 64 / 2, ver_res / 2.0 - 64 / 2);
112 lv_obj_set_size(home_img_btn, 64, 64);
113 lv_obj_add_event_cb(home_img_btn, home_img_clicked_callback, LV_EVENT_CLICKED, NULL);
114}
const lv_img_dsc_t home
定义 home.c:312
lv_obj_t * HomePage_OBJ
void MessagePage()
消息页面
static lv_coord_t ver_res
static lv_coord_t hor_res
lv_obj_t * MessagePage_OBJ
static lv_coord_t rect_width
static void home_img_clicked_callback(lv_event_t *e)
主页按键触发回调