import _thread
from queue import Queue
from machine import RTC
-
+LCD_X = 128
+LCD_Y = 128
def audio_cb(event):
if event == 0:
EventMesh.publish("set_audio_state", 1)
style_bar.set_bg_color(lv.color_make(0xA0, 0xA0, 0xA0))
style_bar.set_bg_grad_color(lv.color_make(0xA0, 0xA0, 0xA0))
style_bar.set_bg_grad_dir(lv.GRAD_DIR.VER)
-style_bar.set_bg_opa(60)
+style_bar.set_bg_opa(255)
style_bar.set_pad_left(0)
style_bar.set_pad_right(0)
style_bar.set_pad_top(0)
style_wechat_btn.set_border_width(0)
style_wechat_btn.set_shadow_opa(0)
-style_contact_btn = lv.style_t()
+
+style_contact_btn = lv.style_t()
style_contact_btn.init()
+style_contact_btn.set_radius(5)
style_contact_btn.set_bg_color(lv.color_make(0xff, 0xff, 0xff))
+style_contact_btn.set_bg_opa(255)
style_contact_btn.set_border_width(0)
-style_contact_btn.set_shadow_opa(0)
+style_contact_btn.set_pad_left(0)
+style_contact_btn.set_pad_right(0)
+style_contact_btn.set_pad_top(0)
+style_contact_btn.set_pad_bottom(0)
+
style_common_bg_rect_btn_pressed = lv.style_t()
style_common_bg_rect_btn_pressed.init()
style_contact_btn_pressed = lv.style_t()
style_contact_btn_pressed.init()
-style_contact_btn_pressed.set_radius(5)
+style_contact_btn_pressed.set_radius(0)
style_contact_btn_pressed.set_bg_color(lv.color_make(0xff,0xff,0xff))
style_contact_btn_pressed.set_bg_grad_color(lv.color_make(0x21,0x95,0xf6))
style_contact_btn_pressed.set_bg_grad_dir(lv.GRAD_DIR.HOR)
global phone_screen ,phone_line,phone_label,phone_one,phone_two,phone_three,phone_four,phone_five,phone_six,phone_seven,phone_eight,phone_nine,phone_start,\
phone_zero,phone_hash,phone_call,phone_call_btn,phone_contact,phone_contact_btn,phone_delete,phone_delete_btn
- size_x = 42 #按钮大小
- size_y = 18
- start_x = 0
- start_y = 30
+ size_x = 36 #按钮大小
+ size_y = 22
+ start_x = 5
+ start_y = 25
+
+ offset_y = 4
if phone_screen == None:
phone_screen = lv.obj()
print("phone_screen")
phone_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_line = lv.line(phone_screen)
- phone_line.set_points(phone_line_points,2)
- phone_line.set_pos(125,5)
- phone_line.set_size(2,18)
- phone_line.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
- phone_line.add_style(style_line,0)
+ # phone_line = lv.line(phone_screen)
+ # phone_line.set_points(phone_line_points,2)
+ # phone_line.set_pos(125,5)
+ # phone_line.set_size(2,18)
+ # phone_line.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
+ # phone_line.add_style(style_line,0)
phone_label = lv.label(phone_screen)
- phone_label.set_pos(0, 0)
+ phone_label.set_pos(0, 5)
phone_label.set_size(128, 20)
phone_label.set_text(" ")
phone_label.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
phone_label.set_long_mode(lv.label.LONG.CLIP)
- phone_label.set_style_text_align(lv.TEXT_ALIGN.RIGHT, 0)
+ phone_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
phone_one = lv.img(phone_screen)
phone_one.set_src("U:/static/IMAGE_NUMBER_KEY1_ICON.png")
phone_one.add_flag(lv.obj.FLAG.CLICKABLE)
phone_one.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
phone_one.set_pos(start_x, start_y)
- phone_one.set_size(start_x+size_x, size_y)
+ phone_one.set_size(size_x, size_y)
phone_two = lv.img(phone_screen)
phone_two.set_size(size_x, size_y)
phone_two.set_src("U:/static/IMAGE_NUMBER_KEY2_ICON.png")
phone_two.add_flag(lv.obj.FLAG.CLICKABLE)
phone_two.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_two.set_pos(start_x+size_x, start_y)
+ phone_two.set_pos(start_x+size_x+5*1, start_y)
phone_three = lv.img(phone_screen)
phone_three.set_size(size_x, size_y)
phone_three.set_src("U:/static/IMAGE_NUMBER_KEY3_ICON.png")
phone_three.add_flag(lv.obj.FLAG.CLICKABLE)
phone_three.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_three.set_pos(start_x+size_x*2, start_y)
+ phone_three.set_pos(start_x+size_x*2+5*2, start_y)
phone_four = lv.img(phone_screen)
phone_four.set_size(size_x, size_y)
phone_four.set_src("U:/static/IMAGE_NUMBER_KEY4_ICON.png")
phone_four.add_flag(lv.obj.FLAG.CLICKABLE)
phone_four.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_four.set_pos(start_x, start_y+size_y)
+ phone_four.set_pos(start_x, start_y+size_y+offset_y)
phone_five = lv.img(phone_screen)
phone_five.set_size(size_x, size_y)
phone_five.set_src("U:/static/IMAGE_NUMBER_KEY5_ICON.png")
phone_five.add_flag(lv.obj.FLAG.CLICKABLE)
phone_five.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_five.set_pos(start_x+size_x, start_y+size_y)
+ phone_five.set_pos(start_x+size_x+5*1, start_y+size_y+offset_y)
phone_six = lv.img(phone_screen)
phone_six.set_size(size_x, size_y)
phone_six.set_src("U:/static/IMAGE_NUMBER_KEY6_ICON.png")
phone_six.add_flag(lv.obj.FLAG.CLICKABLE)
phone_six.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_six.set_pos(start_x+size_x*2, start_y+size_y)
+ phone_six.set_pos(start_x+size_x*2+5*2, start_y+size_y+offset_y)
phone_seven = lv.img(phone_screen)
phone_seven.set_size(size_x, size_y)
phone_seven.set_src("U:/static/IMAGE_NUMBER_KEY7_ICON.png")
phone_seven.add_flag(lv.obj.FLAG.CLICKABLE)
phone_seven.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_seven.set_pos(start_x, start_y+size_y*2)
+ phone_seven.set_pos(start_x, start_y+size_y*2+offset_y*2)
phone_eight = lv.img(phone_screen)
phone_eight.set_size(size_x, size_y)
phone_eight.set_src("U:/static/IMAGE_NUMBER_KEY8_ICON.png")
phone_eight.add_flag(lv.obj.FLAG.CLICKABLE)
phone_eight.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_eight.set_pos(start_x+size_x, start_y+size_y*2)
+ phone_eight.set_pos(start_x+size_x+5*1, start_y+size_y*2+offset_y*2)
phone_nine = lv.img(phone_screen)
phone_nine.set_size(size_x, size_y)
phone_nine.set_src("U:/static/IMAGE_NUMBER_KEY9_ICON.png")
phone_nine.add_flag(lv.obj.FLAG.CLICKABLE)
phone_nine.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_nine.set_pos(start_x+size_x*2, start_y+size_y*2)
+ phone_nine.set_pos(start_x+size_x*2+5*2, start_y+size_y*2+offset_y*2)
+
+ # phone_start = lv.img(phone_screen)
+ # phone_start.set_size(size_x, size_y)
+ # phone_start.set_src("U:/static/IMAGE_NUMBER_KEYSTAR_ICON.png")
+ # phone_start.add_flag(lv.obj.FLAG.CLICKABLE)
+ # phone_start.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # phone_start.set_pos(start_x, start_y+size_y*3)
+
+ phone_delete = lv.img(phone_screen)
+ phone_delete.set_size(size_x, size_y)
+ phone_delete.set_src("U:/static/IMAGE_BUTTON_DELKEY.png")
+ phone_delete.add_flag(lv.obj.FLAG.CLICKABLE)
+ phone_delete.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ phone_delete.set_pos(start_x, start_y+size_y*3+offset_y*3)
+
- phone_start = lv.img(phone_screen)
- phone_start.set_size(size_x, size_y)
- phone_start.set_src("U:/static/IMAGE_NUMBER_KEYSTAR_ICON.png")
- phone_start.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_start.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_start.set_pos(start_x, start_y+size_y*3)
phone_zero = lv.img(phone_screen)
phone_zero.set_size(size_x, size_y)
phone_zero.set_src("U:/static/IMAGE_NUMBER_KEY0_ICON.png")
phone_zero.add_flag(lv.obj.FLAG.CLICKABLE)
phone_zero.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_zero.set_pos(start_x+size_x, start_y+size_y*3)
-
- phone_hash = lv.img(phone_screen)
- phone_hash.set_size(size_x, size_y)
- phone_hash.set_src("U:/static/IMAGE_NUMBER_KEYHASH_ICON.png")
- phone_hash.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_hash.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_hash.set_pos(start_x+size_x*2, start_y+size_y*3)
+ phone_zero.set_pos(start_x+size_x+5*1, start_y+size_y*3+offset_y*3)
phone_call = lv.img(phone_screen)
phone_call.set_size(size_x, size_y)
phone_call.set_src("U:/static/IMAGE_BUTTON_DIAL.png")
phone_call.add_flag(lv.obj.FLAG.CLICKABLE)
phone_call.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_call.set_pos(start_x, start_y+size_y*4)
-
- phone_call_btn = lv.img(phone_screen)
- phone_call_btn.set_size(size_x, size_y)
- phone_call_btn.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_call_btn.set_pos(start_x, start_y+size_y*4)
+ phone_call.set_pos(start_x+size_x*2+5*2, start_y+size_y*3+offset_y*3)
- phone_contact = lv.img(phone_screen)
- phone_contact.set_size(size_x, size_y)
- phone_contact.set_src("U:/static/IMAGE_BUTTON_DIAL_CONTACT.png")
- phone_contact.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_contact.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_contact.set_pos(start_x+size_x, start_y+size_y*4)
-
- phone_contact_btn = lv.img(phone_screen)
- phone_contact_btn.set_size(size_x, size_y)
- phone_contact_btn.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_contact_btn.set_pos(start_x+size_x, start_y+size_y*4)
-
- phone_delete = lv.img(phone_screen)
- phone_delete.set_size(size_x, size_y)
- phone_delete.set_src("U:/static/IMAGE_BUTTON_DELKEY.png")
- phone_delete.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_delete.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- phone_delete.set_pos(start_x+size_x*2, start_y+size_y*4)
- phone_delete_btn = lv.img(phone_screen)
- phone_delete_btn.set_size(size_x, size_y)
- phone_delete_btn.add_flag(lv.obj.FLAG.CLICKABLE)
- phone_delete_btn.set_pos(start_x+size_x*2, start_y+size_y*4)
self.meta = phone_screen
lv.EVENT.CLICKED, None)
phone_six.add_event_cb(lambda e: EventMesh.callback_wrapper(self.six(e)),
lv.EVENT.CLICKED, None)
- phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.seven(e)),
+ phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
lv.EVENT.CLICKED, None)
+
+ phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
+ lv.EVENT.LONG_PRESSED, None)#长按显示+
+
+ phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.endpressed_start(e)),
+ lv.EVENT.RELEASED, None)#释放按键
+
phone_eight.add_event_cb(lambda e: EventMesh.callback_wrapper(self.eight(e)),
lv.EVENT.CLICKED, None)
- phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.nine(e)),
- lv.EVENT.CLICKED, None)
- phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero(e)),
- lv.EVENT.CLICKED, None)
+ phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
+ lv.EVENT.CLICKED, None)
+
+ phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
+ lv.EVENT.LONG_PRESSED, None)#长按显示+
+
+ phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.nine_endpressed_start(e)),
+ lv.EVENT.RELEASED, None)#释放按键
- phone_call_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.call(e)),
- lv.EVENT.CLICKED, None)
- phone_contact_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.contact(e)),
+ # phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero(e)),
+ # lv.EVENT.CLICKED, None)
+
+ phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
+ lv.EVENT.CLICKED, None)#短按显示*
+
+ phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
+ lv.EVENT.LONG_PRESSED, None)#长按显示+
+
+ phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero_endpressed_start(e)),
+ lv.EVENT.RELEASED, None)#释放按键
+
+ phone_call.add_event_cb(lambda e: EventMesh.callback_wrapper(self.call(e)),
lv.EVENT.CLICKED, None)
- phone_delete_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.delete(e)),
+ # phone_contact_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.contact(e)),
+ # lv.EVENT.CLICKED, None)
+ phone_delete.add_event_cb(lambda e: EventMesh.callback_wrapper(self.delete(e)),
lv.EVENT.CLICKED, None)
- phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
- lv.EVENT.CLICKED, None)#短按显示*
+ # phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
+ # lv.EVENT.CLICKED, None)#短按显示*
- phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
- lv.EVENT.LONG_PRESSED, None)#长按显示+
+ # phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
+ # lv.EVENT.LONG_PRESSED, None)#长按显示+
- phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.endpressed_start(e)),
- lv.EVENT.RELEASED, None)#释放按键
+ # phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.endpressed_start(e)),
+ # lv.EVENT.RELEASED, None)#释放按键
- phone_hash.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hash(e)),
- lv.EVENT.CLICKED, None)
+ # phone_hash.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hash(e)),
+ # lv.EVENT.CLICKED, None)
self.phone_num=''
# print("self.phone_list :{} self.phone_num:{}".format(self.phone_list,self.phone_num))
if self.timer_cb == 0:
self.timer_cb = 1
- self.timer.start(1000,1,self.refresh_line)
+ # self.timer.start(1000,1,self.refresh_line)
def refresh_line(self,e):
+ return
if self.count > 2 :
self.count = 1
if self.count%2 == 0:
self.timer_cb = 0
self.timer.stop()
- def endpressed_start(self,e):
+ def nine_endpressed_start(self,e):
+ if len(self.phone_list) >= PHONE_CALL_MAX_DATA:#限制拨号数量20个数字
+ #self.phone_list.pop(0)
+ return
+
+ if self.button == 1:#长按
+ self.phone_list.append("#")
+ else:#短按
+ self.phone_list.append("9")
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
+
+
+ def zero_endpressed_start(self,e):
if len(self.phone_list) >= PHONE_CALL_MAX_DATA:#限制拨号数量20个数字
#self.phone_list.pop(0)
return
if self.button == 1:#长按
self.phone_list.append("+")
else:#短按
+ self.phone_list.append("0")
+
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
+
+ def endpressed_start(self,e):
+ if len(self.phone_list) >= PHONE_CALL_MAX_DATA:#限制拨号数量20个数字
+ #self.phone_list.pop(0)
+ return
+
+ if self.button == 1:#长按
self.phone_list.append("*")
-
+ else:#短按
+ self.phone_list.append("7")
self.phone_num = ''.join(self.phone_list)
self.show_num()
def show_num(self):
#print("self.phone_num ",self.phone_num,self.phone_list)
- len_t = len(self.phone_list)*20
- if len_t > 120:
- len_t = 120
- phone_label.set_size(len_t,30)
- phone_label.set_pos(120-len_t,5)
+ global phone_label
+ phone_label.set_pos(0, 5)
+ phone_label.set_size(128, 20)
phone_label.set_text(self.phone_num)
def lcd_on(self):
call_log_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
call_log_cont_list_screen = lv.obj(call_log_screen)
- call_log_cont_list_screen.set_pos(0, 50)
- call_log_cont_list_screen.set_size(240, 270)
+ call_log_cont_list_screen.set_pos(0, 30)
+ call_log_cont_list_screen.set_size(LCD_X, LCD_Y-30)
call_log_cont_list_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
call_log_cont_list_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
call_log_title = lv.label(call_log_screen)
call_log_title.set_pos(0, 10)
- call_log_title.set_size(240, 40)
+ call_log_title.set_size(LCD_X, 20)
call_log_title.set_long_mode(lv.label.LONG.WRAP)
call_log_title.set_text("通话记录")
call_log_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
call_log_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
none_call_log_title = lv.label(call_log_cont_list_screen)
- none_call_log_title.set_pos(0, 120)
- none_call_log_title.set_size(240, 40)
+ none_call_log_title.set_pos(0, (LCD_Y-30)//2-20)
+ none_call_log_title.set_size(LCD_X, 20)
none_call_log_title.set_long_mode(lv.label.LONG.WRAP)
none_call_log_title.set_text(" ")
none_call_log_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
#self.call_log_detail_list = lv.obj(call_log_screen)
self.call_log_detail_list = lv.obj(call_log_cont_list_screen)
self.call_log_detail_list.set_pos(0, 0)
- self.call_log_detail_list.set_size(240, 271)
+ self.call_log_detail_list.set_size(LCD_X, LCD_Y-30+1)
self.call_log_detail_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
self.call_log_detail_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
for i in range(self.CALL_LOG_MAX):
if self.check_json == True and len(self.read_call_log) != 0:
none_call_log_title.set_text(" ")
-
+ self.call_log_detail_list.clear_flag(lv.obj.FLAG.HIDDEN)#隐藏空文本
# self.call_log_detail_list.delete()#先删除一次控件
# self.call_log_detail_list = lv.obj(call_log_cont_list_screen)
# self.call_log_detail_list.set_pos(0, 0)
# print("self.call_log :{} \r\n sort_new:{}\r\n".format(self.read_call_log,sort_new))
for sort_new_tmp in sort_new: #字典 key value
+
num_count = sort_new_tmp["count"]#获取通话次数
num_name = sort_new_tmp["name"]#获取名称
num_phonnum = sort_new_tmp["number"]#获取电话号码
# print("num_count :{} num_name:{} num_time:{}".format(num_count,num_name,num_time))
#_btn = lv.btn(self.call_log_detail_list)
- self.call_log_detail_list_dict[h]["_btn"].set_size(240,80)
- self.call_log_detail_list_dict[h]["_btn"].set_pos(0,82*h)
+ self.call_log_detail_list_dict[h]["_btn"].set_size(LCD_X,45)
+ self.call_log_detail_list_dict[h]["_btn"].set_pos(0,47*h)
self.call_log_detail_list_dict[h]["_btn"].add_style(style_contact_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
self.call_log_detail_list_dict[h]["_btn"].add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling(e)),
lv.EVENT.CLICKED, None)
#_btn_label2 = lv.label(_btn)
- self.call_log_detail_list_dict[h]["_btn_label2"].set_pos(0, 5)
- self.call_log_detail_list_dict[h]["_btn_label2"].set_size(0, 25)
+ self.call_log_detail_list_dict[h]["_btn_label2"].set_pos(0, 0)
+ self.call_log_detail_list_dict[h]["_btn_label2"].set_size(0, 20)
self.call_log_detail_list_dict[h]["_btn_label2"].set_text(num_phonnum)
#_btn_label2.add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
#
# _btn_label3.add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
#_btn_label4 = lv.label(_btn)
- self.call_log_detail_list_dict[h]["_btn_label4"].set_pos(0, 38)
- self.call_log_detail_list_dict[h]["_btn_label4"].set_size(230, 30)
+ self.call_log_detail_list_dict[h]["_btn_label4"].set_pos(5, 24)
+ self.call_log_detail_list_dict[h]["_btn_label4"].set_size(LCD_X-15, 21)
self.call_log_detail_list_dict[h]["_btn_label4"].set_text(num_phonnum)
+ self.call_log_detail_list_dict[h]["_btn_label4"].set_long_mode(lv.label.LONG.CLIP)
self.call_log_detail_list_dict[h]["_btn_label4"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
#_btn_label5 = lv.label(_btn)
# _btn_label5.add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
#_btn_label6 = lv.label(_btn)
- self.call_log_detail_list_dict[h]["_btn_label6"].set_pos(0, 5)
- self.call_log_detail_list_dict[h]["_btn_label6"].set_size(230, 28)
+ self.call_log_detail_list_dict[h]["_btn_label6"].set_pos(5, 4)
+ self.call_log_detail_list_dict[h]["_btn_label6"].set_size(LCD_X-15, 20)
self.call_log_detail_list_dict[h]["_btn_label6"].set_text(num_name)
+ self.call_log_detail_list_dict[h]["_btn_label6"].set_long_mode(lv.label.LONG.CLIP)
self.call_log_detail_list_dict[h]["_btn_label6"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
self.call_log_detail_list_dict[h]["_btn"].clear_flag(lv.obj.FLAG.HIDDEN)
hangup_imgbtn = None
class DialingScreen(Screen):
NAME = "dialing"
-
+
def __init__(self):
super().__init__()
self.meta = None
-
+ self.meta_type = "popup"
self.call_log = {}
self.call_log_value = {}
self.read_call_log = {}
print("dialing_screen")
dialing_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
- dialing_img = lv.img(dialing_screen)
- dialing_img.set_pos(80, 20)
- dialing_img.set_size(64, 64)
- dialing_img.set_src("U:/static/IMAGE_NOTICE_CALL.png")
- dialing_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # dialing_img = lv.img(dialing_screen)
+ # dialing_img.set_pos(80, 20)
+ # dialing_img.set_size(64, 64)
+ # dialing_img.set_src("U:/static/IMAGE_NOTICE_CALL.png")
+ # dialing_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_name = lv.label(dialing_screen)
- dialing_name.set_pos(0, 120)
- dialing_name.set_size(240, 50)
+ dialing_name.set_pos(0, 14)
+ dialing_name.set_size(LCD_X, 20)
dialing_name.set_text(" ")
+ dialing_name.set_long_mode(lv.label.LONG.DOT)
dialing_name.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
dialing_name.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_call_label = lv.label(dialing_screen)
- dialing_call_label.set_pos(0, 174)
- dialing_call_label.set_size(240, 50)
+ dialing_call_label.set_pos(0, 43)
+ dialing_call_label.set_size(LCD_X, 40)
dialing_call_label.set_text("正在等待对方接\n听电话")
dialing_call_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
dialing_call_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
- hangup_imgbtn = lv.img(dialing_screen)
- hangup_imgbtn.set_size(64, 64)
+ hangup_imgbtn = lv.img(dialing_screen) #64
+ hangup_imgbtn.set_size(32, 32)
hangup_imgbtn.set_src("U:/static/hang_up.png")
hangup_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
hangup_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- hangup_imgbtn.set_pos(80, 250)
+ hangup_imgbtn.set_pos(48, 90)
hangup_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hangup(e)),
lv.EVENT.CLICKED, None)
self.meta = dialing_screen
name = EventMesh.publish("get_phonename")#获取拨打电话名称
dialing_name.set_text(name)#名称
def post_processor_after_initialization(self):
- # print("创建通话记录 post_processor_before_initialization\n")
- utime.sleep_ms(200)#不加延时会切屏
- #获取字符串
- name = EventMesh.publish("get_phonename")#获取拨打电话名称
- content = EventMesh.publish("get_phonenum")#获取电话号码
- time = EventMesh.publish("screen_get_time")#获取系统时间
-
- # ["15692025051","2","12:59","哥gdh符合双方和开发商开发好看的思考"],
- # 格式:{"电话号码":{"timesec":'时间戳',"number":'电话号码',"name":'名字',"time":'时间',"count":'通话次数'}}
- # dialing_content.set_text(content)#电话号码
- num = 0
-
- date_tmp = utime.localtime()
- time_tmp = utime.mktime(date_tmp)
- # print("time_tmp:{}".format(time_tmp))
- read_call_log = EventMesh.publish("get_call_log_list")
- check_json = read_call_log[0]
-
- if check_json == True:
- self.read_call_log = read_call_log[1]
- b = content in self.read_call_log.keys()#查找key中是否包含content电话号码 True 包含在里面 False不包含在里面
- if b == True:#查找是否有相同的电话号码 有就直接读出来的次数上加一 没有则从1开始加起
- number_tmp = {}
- number_tmp = self.read_call_log[content] #通话次数加一
- num_tmp_t = number_tmp["count"]
- # print("number_tmp:{} self.read_call_log.value:{}".format(number_tmp,self.read_call_log.values()))
- else :
- num_tmp_t = 0
- num = num_tmp_t
- else:
- num = 0 #通话次数
-
- sort_tmp = {}
- sort_tmp = self.read_call_log.values()
- sort_new = {}
- sort_new = sorted(sort_tmp, key = lambda i: i['timesec'],reverse = True)#按照时间戳进行排序 去掉最旧的一次数据如果满了五十条
-
- i = 0
- # 49 50
- if len(self.read_call_log) >= self.CALL_LOG_MAX:
- for sort_new_tmp in sort_new: #字典 key value
- i+=1 # 1
- if i >= self.CALL_LOG_MAX:#大于50条把最后一条删除掉只保留前面50调最新的数据
- key_tmp = sort_new_tmp["number"]
- del self.read_call_log[key_tmp]
- tmp = {}
- tmp["count"]= num+1 #通话次数
- tmp["time"]= "{}:{}".format("%02d"%(time[0][0]),"%02d"%(time[0][1]))#通湖时间
- tmp["name"]= name #名称
- tmp["timesec"]= time_tmp #时间戳
- tmp["number"] = content
-
- self.read_call_log[content] = tmp
- with open("/usr/static/storage_file/Call_log.json","w",encoding="utf-8") as fd:
- ujson.dump(self.read_call_log,fd)
- print("创建通话记录")
- EventMesh.publish("set_call_log_list", [1,self.read_call_log])
- EventMesh.publish("call_log_update_show_list")
+ pass
def hangup(self,e):
EventMesh.publish("set_UI_high_priority", 0)
no_sim_popup_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
no_sim_popup_screen_title1 = lv.label(no_sim_popup_screen)
- no_sim_popup_screen_title1.set_pos(0, 140)
- no_sim_popup_screen_title1.set_size(240, 40)
+ no_sim_popup_screen_title1.set_pos(0, 40)
+ no_sim_popup_screen_title1.set_size(LCD_X, 40)
no_sim_popup_screen_title1.set_text("无SIM卡或")
no_sim_popup_screen_title1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
no_sim_popup_screen_title1.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_sim_popup_screen_title2 = lv.label(no_sim_popup_screen)
- no_sim_popup_screen_title2.set_pos(0, 190)
- no_sim_popup_screen_title2.set_size(240, 40)
+ no_sim_popup_screen_title2.set_pos(0, 60)
+ no_sim_popup_screen_title2.set_size(LCD_X, 40)
no_sim_popup_screen_title2.set_text("无网络")
no_sim_popup_screen_title2.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
no_sim_popup_screen_title2.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
def btn8_press(self):
EventMesh.publish("return_prev_screen")
+wechat_failed_popup_screen = None
+wechat_failed_popup_title1 = None
+wechat_failed_popup_title2 = None
+#未插卡
+class wechatFailedScreen(Screen):#录音失败提示
+ NAME = "wechat_failed_popup_screen"
+ def __init__(self):
+ super().__init__()
+ self.meta = None
+ self.meta_type = "popup"
+
+ def initialization(self):
+ global wechat_failed_popup_screen,wechat_failed_popup_title1,wechat_failed_popup_title2
+ if wechat_failed_popup_screen == None :
+ wechat_failed_popup_screen = lv.obj()
+ print("wechat_failed_popup_screen")
+ wechat_failed_popup_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+ wechat_failed_popup_title1 = lv.label(wechat_failed_popup_screen)
+ wechat_failed_popup_title1.set_pos(0, 40)
+ wechat_failed_popup_title1.set_size(LCD_X, 40)
+ wechat_failed_popup_title1.set_text("录音失败")
+ wechat_failed_popup_title1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ wechat_failed_popup_title1.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+ wechat_failed_popup_title2 = lv.label(wechat_failed_popup_screen)
+ wechat_failed_popup_title2.set_pos(0, 60)
+ wechat_failed_popup_title2.set_size(LCD_X, 40)
+ wechat_failed_popup_title2.set_text("请重试!")
+ wechat_failed_popup_title2.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ wechat_failed_popup_title2.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+ self.meta = wechat_failed_popup_screen
+
+ def done_left_to_right(self):
+ EventMesh.publish("return_prev_screen")
+
+ def done_right_to_left(self):
+ EventMesh.publish("return_prev_screen")
+
+ def done_bottom_to_top(self):
+ EventMesh.publish("return_prev_screen")
+
+ def done_top_to_bottom(self):
+ EventMesh.publish("return_prev_screen")
+
+ def done_return(self):
+ EventMesh.publish("return_prev_screen")
+
+
+ def btn1_release(self):
+ EventMesh.publish("return_prev_screen")
+
+ def btn8_press(self):
+ EventMesh.publish("return_prev_screen")
+
no_valied_num_screen = None
no_valied_num_screen_title1 = None
no_sim_power_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
no_sim_power_screen_title = lv.label(no_sim_power_screen)
- no_sim_power_screen_title.set_pos(0, 20)
- no_sim_power_screen_title.set_size(240, 40)
+ no_sim_power_screen_title.set_pos(0, 5)
+ no_sim_power_screen_title.set_size(128, 20)
no_sim_power_screen_title.set_text("无SIM卡,无法拨打")
no_sim_power_screen_title.set_long_mode(lv.label.LONG.WRAP)
no_sim_power_screen_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
no_sim_power_screen_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
- no_sim_power_screen_img = lv.img(no_sim_power_screen)
- no_sim_power_screen_img.set_pos(100, 70)
- no_sim_power_screen_img.set_size(61, 61)
- no_sim_power_screen_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- no_sim_power_screen_img.set_src("U:/static/poweroff_icon.png")
+ # no_sim_power_screen_img = lv.img(no_sim_power_screen)
+ # no_sim_power_screen_img.set_pos(49, 30)
+ # no_sim_power_screen_img.set_size(30, 30)
+ # no_sim_power_screen_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # no_sim_power_screen_img.set_src("U:/static/poweroff_icon.png")
no_sim_power_screen_label = lv.label(no_sim_power_screen)
- no_sim_power_screen_label.set_pos(0, 150)
- no_sim_power_screen_label.set_size(240, 40)
+ no_sim_power_screen_label.set_pos(0, 30)
+ no_sim_power_screen_label.set_size(128, 20)
no_sim_power_screen_label.set_text("是否关机?")
no_sim_power_screen_label.set_long_mode(lv.label.LONG.WRAP)
no_sim_power_screen_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
no_sim_power_screen_comfirm = lv.img(no_sim_power_screen)
- no_sim_power_screen_comfirm.set_size(176, 46)
- no_sim_power_screen_comfirm.set_pos(32, 190)
+ no_sim_power_screen_comfirm.set_size(88, 23)
+ no_sim_power_screen_comfirm.set_pos(20, 60)
no_sim_power_screen_comfirm.set_src("U:/static/off_icon.png")
no_sim_power_screen_comfirm.add_flag(lv.obj.FLAG.CLICKABLE)
no_sim_power_screen_comfirm.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ no_sim_power_screen_comfirm_btn = lv.img(no_sim_power_screen)
+ no_sim_power_screen_comfirm_btn.set_size(88, 35)
+ no_sim_power_screen_comfirm_btn.set_pos(20, 50)
+ no_sim_power_screen_comfirm_btn.add_flag(lv.obj.FLAG.CLICKABLE)
+ no_sim_power_screen_comfirm_btn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+
poweroff_confirm_label = lv.label(no_sim_power_screen_comfirm)
poweroff_confirm_label.set_text("确定")
- poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 5)
+ poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 0)
poweroff_confirm_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_sim_power_screen_cancel = lv.img(no_sim_power_screen)
- no_sim_power_screen_cancel.set_size(176, 46)
- no_sim_power_screen_cancel.set_pos(32, 250)
+ no_sim_power_screen_cancel.set_size(88, 23)
+ no_sim_power_screen_cancel.set_pos(20, 90)
no_sim_power_screen_cancel.set_src("U:/static/cancel_icon.png")
no_sim_power_screen_cancel.add_flag(lv.obj.FLAG.CLICKABLE)
no_sim_power_screen_cancel.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+ no_sim_power_screen_cancel_btn = lv.img(no_sim_power_screen)
+ no_sim_power_screen_cancel_btn.set_size(88, 43)
+ no_sim_power_screen_cancel_btn.set_pos(20, 85)
+ no_sim_power_screen_cancel_btn.add_flag(lv.obj.FLAG.CLICKABLE)
+ no_sim_power_screen_cancel_btn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
poweroff_return_label = lv.label(no_sim_power_screen_cancel)
poweroff_return_label.set_text("取消")
- poweroff_return_label.align(lv.ALIGN.CENTER, 0, 5)
+ poweroff_return_label.align(lv.ALIGN.CENTER, 0, 0)
poweroff_return_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_sim_power_screen_cancel.set_ext_click_area(20)
self.meta = no_sim_power_screen
- no_sim_power_screen_comfirm.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),
+ no_sim_power_screen_comfirm_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),
lv.EVENT.CLICKED, None)
- no_sim_power_screen_cancel.add_event_cb(lambda e: EventMesh.callback_wrapper(self.cancel(e)),
+ no_sim_power_screen_cancel_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.cancel(e)),
lv.EVENT.CLICKED, None)
def confirm(self,e):
self.timer1 = osTimer()
self.time_count = 0
self.timer2 = osTimer()
+ self.CALL_LOG_MAX = CALL_LOG_MAX
+ self.read_call_log = {}
def initialization(self):
EventMesh.publish("set_UI_high_priority", 1)
print("dialing_popup_screen")
dialing_popup_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
- dialing_popup_img = lv.img(dialing_popup_screen)
- dialing_popup_img.set_pos(80, 20)
- dialing_popup_img.set_size(64, 64)
- dialing_popup_img.set_src("U:/static/IMAGE_NOTICE_CALL.png")
- dialing_popup_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # dialing_popup_img = lv.img(dialing_popup_screen)
+ # dialing_popup_img.set_pos(32, 5)
+ # dialing_popup_img.set_size(64, 64)
+ # dialing_popup_img.set_src("U:/static/IMAGE_NOTICE_CALL.png")
+ # dialing_popup_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_popup_name = lv.label(dialing_popup_screen)
- dialing_popup_name.set_pos(0, 120)
- dialing_popup_name.set_size(240, 50)
+ dialing_popup_name.set_pos(0, 15)
+ dialing_popup_name.set_size(LCD_X, 20)
dialing_popup_name.set_text(" ")
+ dialing_popup_name.set_long_mode(lv.label.LONG.DOT)
dialing_popup_name.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
dialing_popup_name.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_popup_call = lv.label(dialing_popup_screen)
- dialing_popup_call.set_pos(0, 180)
- dialing_popup_call.set_size(240, 50)
+ dialing_popup_call.set_pos(0, 50)
+ dialing_popup_call.set_size(LCD_X, 20)
dialing_popup_call.set_text("正在拨号中")
dialing_popup_call.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
dialing_popup_call.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_popup_hangup_imgbtn = lv.img(dialing_popup_screen)
- dialing_popup_hangup_imgbtn.set_size(64, 64)
+ dialing_popup_hangup_imgbtn.set_size(32, 32)
dialing_popup_hangup_imgbtn.set_src("U:/static/hang_up.png")
dialing_popup_hangup_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
dialing_popup_hangup_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- dialing_popup_hangup_imgbtn.set_pos(80, 250)
+ dialing_popup_hangup_imgbtn.set_pos(48, 90)
dialing_popup_hangup_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hangup(e)),
lv.EVENT.CLICKED, None)
self.meta = dialing_popup_screen
def post_processor_after_initialization(self):
self.time_count = 0
+ # print("创建通话记录 post_processor_before_initialization\n")
+ utime.sleep_ms(200)#不加延时会切屏
+ #获取字符串
+ name = EventMesh.publish("get_phonename")#获取拨打电话名称
+ content = EventMesh.publish("get_phonenum")#获取电话号码
+ time = EventMesh.publish("screen_get_time")#获取系统时间
+
+ # ["15692025051","2","12:59","哥gdh符合双方和开发商开发好看的思考"],
+ # 格式:{"电话号码":{"timesec":'时间戳',"number":'电话号码',"name":'名字',"time":'时间',"count":'通话次数'}}
+ # dialing_content.set_text(content)#电话号码
+ num = 0
+
+ date_tmp = utime.localtime()
+ time_tmp = utime.mktime(date_tmp)
+ # print("time_tmp:{}".format(time_tmp))
+ read_call_log = EventMesh.publish("get_call_log_list")
+ check_json = read_call_log[0]
+
+ if check_json == True:
+ self.read_call_log = read_call_log[1]
+ b = content in self.read_call_log.keys()#查找key中是否包含content电话号码 True 包含在里面 False不包含在里面
+ if b == True:#查找是否有相同的电话号码 有就直接读出来的次数上加一 没有则从1开始加起
+ number_tmp = {}
+ number_tmp = self.read_call_log[content] #通话次数加一
+ num_tmp_t = number_tmp["count"]
+ # print("number_tmp:{} self.read_call_log.value:{}".format(number_tmp,self.read_call_log.values()))
+ else :
+ num_tmp_t = 0
+ num = num_tmp_t
+ else:
+ num = 0 #通话次数
+
+ sort_tmp = {}
+ sort_tmp = self.read_call_log.values()
+ sort_new = {}
+ sort_new = sorted(sort_tmp, key = lambda i: i['timesec'],reverse = True)#按照时间戳进行排序 去掉最旧的一次数据如果满了五十条
+
+ i = 0
+ # 49 50
+ if len(self.read_call_log) >= self.CALL_LOG_MAX:
+ for sort_new_tmp in sort_new: #字典 key value
+ i+=1 # 1
+ if i >= self.CALL_LOG_MAX:#大于50条把最后一条删除掉只保留前面50调最新的数据
+ key_tmp = sort_new_tmp["number"]
+ del self.read_call_log[key_tmp]
+ tmp = {}
+ tmp["count"]= num+1 #通话次数
+ tmp["time"]= "{}:{}".format("%02d"%(time[0][0]),"%02d"%(time[0][1]))#通湖时间
+ tmp["name"]= name #名称
+ tmp["timesec"]= time_tmp #时间戳
+ tmp["number"] = content
+
+ self.read_call_log[content] = tmp
+ with open("/usr/static/storage_file/Call_log.json","w",encoding="utf-8") as fd:
+ ujson.dump(self.read_call_log,fd)
+ print("创建通话记录")
+ EventMesh.publish("set_call_log_list", [1,self.read_call_log])
+ EventMesh.publish("call_log_update_show_list")
+
self.timer1.start(1000, 1, self.timeout_hangup)
self.timer2.start(2000, 0, self.timeout_call)
dial_no_connect_popup.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
dialing_connect_call = lv.label(dial_no_connect_popup)
- dialing_connect_call.set_pos(0, 110)
- dialing_connect_call.set_size(240, 150)
+ dialing_connect_call.set_pos(0, 40)
+ dialing_connect_call.set_size(128, 88)
dialing_connect_call.set_text("你好,你所拨打的\n电话暂时无法接\n通,请稍后再拨")
dialing_connect_call.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
dialing_connect_call.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
message_popup_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
message_popup_title = lv.label(message_popup_screen)
- message_popup_title.set_pos(0, 150)
- message_popup_title.set_size(240, 40)
+ message_popup_title.set_pos(0, 40)
+ message_popup_title.set_size(128, 40)
message_popup_title.set_text("你有新的消息")
message_popup_title.set_long_mode(lv.label.LONG.WRAP)
message_popup_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
msg_top_title = lv.label(msg_list_screen)
msg_top_title.set_pos(0, 10)
- msg_top_title.set_size(128, 40)
+ msg_top_title.set_size(LCD_X, 20)
msg_top_title.set_text("信息")
msg_top_title.set_long_mode(lv.label.LONG.WRAP)
msg_top_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
msg_cont_list_screen = lv.obj(msg_list_screen)
- msg_cont_list_screen.set_pos(0, 50)
- msg_cont_list_screen.set_size(128, 128-50)
+ msg_cont_list_screen.set_pos(0, 30)
+ msg_cont_list_screen.set_size(LCD_X, LCD_Y-30)
msg_cont_list_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
msg_cont_list_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
msg_list_t_done_img = lv.img(msg_cont_list_screen)
- msg_list_t_done_img.set_pos(53, 20)
- msg_list_t_done_img.set_size(134, 117)
+ msg_list_t_done_img.set_pos(53, 10)
+ msg_list_t_done_img.set_size(67, 59)
msg_list_t_done_img.set_src("U:/static/IMAGE_NOTICE_NONE.png")
msg_list_t_done_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
no_msg_text = lv.label(msg_cont_list_screen)
- no_msg_text.set_pos(0, 210)
- no_msg_text.set_size(128, 40)
+ no_msg_text.set_pos(0, 100)
+ no_msg_text.set_size(LCD_X, 20)
no_msg_text.set_text("暂无信息")
no_msg_text.set_long_mode(lv.label.LONG.WRAP)
no_msg_text.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
self.sms_detail_list = lv.obj(msg_cont_list_screen)
self.sms_detail_list.set_pos(0, 0)
- self.sms_detail_list.set_size(118, 129)
+ self.sms_detail_list.set_size(LCD_X, 129)
self.sms_detail_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
self.sms_detail_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
for i in range(MSG_MAX):
tmp = sms.searchTextMsg(j)
if tmp != -1:
#msg_btn = lv.btn(self.sms_detail_list)
- self.sms_detail_list_dict[i]["msg_btn"].set_size(118,65)
- self.sms_detail_list_dict[i]["msg_btn"].set_pos(0,67*count)
- self.sms_detail_list_dict[i]["msg_btn"].add_style(style_sms_bg_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
+ self.sms_detail_list_dict[i]["msg_btn"].set_size(LCD_X,45)
+ self.sms_detail_list_dict[i]["msg_btn"].set_pos(0,47*count)
+ self.sms_detail_list_dict[i]["msg_btn"].add_style(style_contact_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
# self.sms_detail_list_dict[i]["msg_btn"].add_event_cb(lambda e: EventMesh.callback_wrapper(self.sms_cb(e)),
# lv.EVENT.CLICKED, None)
detail1 = tmp[1]
#_btn_label4 = lv.label(msg_btn)
- self.sms_detail_list_dict[i]["_btn_label4"].set_pos(0, 34)
- self.sms_detail_list_dict[i]["_btn_label4"].set_size(180, 28)
+ self.sms_detail_list_dict[i]["_btn_label4"].set_pos(5, 24)
+ self.sms_detail_list_dict[i]["_btn_label4"].set_size(LCD_X-15, 21)
self.sms_detail_list_dict[i]["_btn_label4"].set_text(detail1)
self.sms_detail_list_dict[i]["_btn_label4"].set_long_mode(lv.label.LONG.DOT)
self.sms_detail_list_dict[i]["_btn_label4"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
title1 = tmp[0]
#_btn_label5 = lv.label(msg_btn)
- self.sms_detail_list_dict[i]["_btn_label5"].set_pos(0, 5)
- self.sms_detail_list_dict[i]["_btn_label5"].set_size(180, 25)
+ self.sms_detail_list_dict[i]["_btn_label5"].set_pos(5, 4)
+ self.sms_detail_list_dict[i]["_btn_label5"].set_size(LCD_X-15, 20)
self.sms_detail_list_dict[i]["_btn_label5"].set_text(title1)
self.sms_detail_list_dict[i]["_btn_label5"].set_long_mode(lv.label.LONG.DOT)
self.sms_detail_list_dict[i]["_btn_label5"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
msg_detail_title = lv.label(msg_detail_screen)
msg_detail_title.set_pos(0, 10)
- msg_detail_title.set_size(240, 40)
- msg_detail_title.set_long_mode(lv.label.LONG.WRAP)
+ msg_detail_title.set_size(LCD_X, 20)
+ msg_detail_title.set_long_mode(lv.label.LONG.DOT)
msg_detail_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
msg_detail_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
msg_detail_cont = lv.label(msg_detail_screen)
- msg_detail_cont.set_pos(0, 50)
- msg_detail_cont.set_size(240, 270)
- msg_detail_cont.set_long_mode(lv.label.LONG.WRAP)
+ msg_detail_cont.set_pos(0, 30)
+ msg_detail_cont.set_size(LCD_X, LCD_Y-30)
+ msg_detail_cont.set_long_mode(lv.label.LONG.DOT)
msg_detail_cont.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
msg_detail_cont.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
self.meta = msg_detail_screen
toolbox_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
toolbox_screen.set_scrollbar_mode(0)
- toolbox_text_img = lv.img(toolbox_screen)
- toolbox_text_img.set_pos(75, 10)
- toolbox_text_img.set_size(90, 30)
- toolbox_text_img.set_src("U:/static/tool/tool_text.png")
- toolbox_text_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # toolbox_text_img = lv.img(toolbox_screen)
+ # toolbox_text_img.set_pos(75, 10)
+ # toolbox_text_img.set_size(90, 30)
+ # toolbox_text_img.set_src("U:/static/tool/tool_text.png")
+ # toolbox_text_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ toolbox_title = lv.label(toolbox_screen)
+ toolbox_title.set_pos(0, 5)
+ toolbox_title.set_size(128, 20)
+ toolbox_title.set_text("工具箱")
+ toolbox_title.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ toolbox_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
toolbox_cont = lv.obj(toolbox_screen)
- toolbox_cont.set_pos(0, 50)
- toolbox_cont.set_size(240, 270)
+ toolbox_cont.set_pos(0, 25)
+ toolbox_cont.set_size(128, 128-25)
toolbox_cont.add_style(toolbox_cont_style,lv.PART.MAIN | lv.STATE.DEFAULT)
toolbox_step_img = lv.img(toolbox_cont)
- toolbox_step_img.set_pos(4, tool_set_y)
- toolbox_step_img.set_size(232, 80)
+ toolbox_step_img.set_pos(5, tool_set_y)
+ toolbox_step_img.set_size(25, 25)
toolbox_step_img.add_flag(lv.obj.FLAG.CLICKABLE)
- toolbox_step_img.set_src("U:/static/tool/IMAGE_SECMENU_STEP.png")
+ toolbox_step_img.set_src("U:/static/IMAGE_SECMENU_STEP.png")
toolbox_step_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- tool_set_y+=90
+
+ toolbox_step_img_label = lv.label(toolbox_cont)
+ toolbox_step_img_label.set_pos(35, tool_set_y+5)
+ toolbox_step_img_label.set_size(128-35, 35)
+ toolbox_step_img_label.set_text("计步")
+ toolbox_step_img_label.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_step_img_label.add_flag(lv.obj.FLAG.CLICKABLE)
+ toolbox_step_img_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ toolbox_step_img_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+ tool_set_y+=35
toolbox_weather_img = lv.img(toolbox_cont)
- toolbox_weather_img.set_pos(4, tool_set_y)
- toolbox_weather_img.set_size(232, 80)
+ toolbox_weather_img.set_pos(5, tool_set_y)
+ toolbox_weather_img.set_size(25, 25)
toolbox_weather_img.add_flag(lv.obj.FLAG.CLICKABLE)
- toolbox_weather_img.set_src("U:/static/tool/IMAGE_SECMENU_WEATHER.png")
+ toolbox_weather_img.set_src("U:/static/IMAGE_SECMENU_WEATHER.png")
toolbox_weather_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- tool_set_y+=90
+ toolbox_weather_img_label = lv.label(toolbox_cont)
+ toolbox_weather_img_label.set_pos(35, tool_set_y+5)
+ toolbox_weather_img_label.set_size(128-35, 35)
+ toolbox_weather_img_label.set_text("天气")
+ toolbox_weather_img_label.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_weather_img_label.add_flag(lv.obj.FLAG.CLICKABLE)
+ toolbox_weather_img_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ toolbox_weather_img_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+
+ tool_set_y+=35
toolbox_alarm_img = lv.img(toolbox_cont)
- toolbox_alarm_img.set_pos(4, tool_set_y)
- toolbox_alarm_img.set_size(232, 80)
+ toolbox_alarm_img.set_pos(5, tool_set_y)
+ toolbox_alarm_img.set_size(25, 25)
toolbox_alarm_img.add_flag(lv.obj.FLAG.CLICKABLE)
- toolbox_alarm_img.set_src("U:/static/tool/IMAGE_SECMENU_ALARM.png")
+ toolbox_alarm_img.set_src("U:/static/IMAGE_SECMENU_ALARM.png")
toolbox_alarm_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ toolbox_alarm_img_label = lv.label(toolbox_cont)
+ toolbox_alarm_img_label.set_pos(35, tool_set_y+5)
+ toolbox_alarm_img_label.set_size(128-35, 35)
+ toolbox_alarm_img_label.set_text("闹钟")
+ toolbox_alarm_img_label.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_alarm_img_label.add_flag(lv.obj.FLAG.CLICKABLE)
+ toolbox_alarm_img_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ toolbox_alarm_img_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
# tool_set_y+=90
# toolbox_sms_img = lv.img(toolbox_cont)
# toolbox_sms_img.set_src("U:/static/tool/sms_setting.png")
# toolbox_sms_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- tool_set_y+=90
+ tool_set_y+=35
toolbox_countdown_img = lv.img(toolbox_cont)
- toolbox_countdown_img.set_pos(4, tool_set_y)
- toolbox_countdown_img.set_size(232, 80)
+ toolbox_countdown_img.set_pos(5, tool_set_y)
+ toolbox_countdown_img.set_size(25, 25)
toolbox_countdown_img.add_flag(lv.obj.FLAG.CLICKABLE)
- toolbox_countdown_img.set_src("U:/static/tool/IMAGE_SECMENU_COUNTDOWN.png")
+ toolbox_countdown_img.set_src("U:/static/IMAGE_SECMENU_COUNTDOWN.png")
toolbox_countdown_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- tool_set_y+=90
+ toolbox_countdown_img_label = lv.label(toolbox_cont)
+ toolbox_countdown_img_label.set_pos(35, tool_set_y+5)
+ toolbox_countdown_img_label.set_size(128-35, 35)
+ toolbox_countdown_img_label.set_text("倒计时")
+ toolbox_countdown_img_label.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_countdown_img_label.add_flag(lv.obj.FLAG.CLICKABLE)
+ toolbox_countdown_img_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ toolbox_countdown_img_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+
+ tool_set_y+=35
toolbox_stopwatch_img = lv.img(toolbox_cont)
- toolbox_stopwatch_img.set_pos(4, tool_set_y)
- toolbox_stopwatch_img.set_size(232, 80)
+ toolbox_stopwatch_img.set_pos(5, tool_set_y)
+ toolbox_stopwatch_img.set_size(25, 25)
toolbox_stopwatch_img.add_flag(lv.obj.FLAG.CLICKABLE)
- toolbox_stopwatch_img.set_src("U:/static/tool/IMAGE_SECMENU_STOPWATCH.png")
+ toolbox_stopwatch_img.set_src("U:/static/IMAGE_SECMENU_STOPWATCH.png")
toolbox_stopwatch_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ toolbox_stopwatch_img_label = lv.label(toolbox_cont)
+ toolbox_stopwatch_img_label.set_pos(35, tool_set_y+5)
+ toolbox_stopwatch_img_label.set_size(128-35, 35)
+ toolbox_stopwatch_img_label.set_text("秒表")
+ toolbox_stopwatch_img_label.set_long_mode(lv.label.LONG.WRAP)
+ toolbox_stopwatch_img_label.add_flag(lv.obj.FLAG.CLICKABLE)
+ toolbox_stopwatch_img_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ toolbox_stopwatch_img_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
toolbox_step_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "step"})), lv.EVENT.CLICKED, None)
toolbox_weather_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "weather"})), lv.EVENT.CLICKED, None)
toolbox_alarm_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "clk_list"})), lv.EVENT.CLICKED, None)
# toolbox_sms_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "popup"})), lv.EVENT.CLICKED, None)
toolbox_countdown_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "countdown"})), lv.EVENT.CLICKED, None)
toolbox_stopwatch_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "stopwatch"})), lv.EVENT.CLICKED, None)
+
+ toolbox_step_img_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "step"})), lv.EVENT.CLICKED, None)
+ toolbox_weather_img_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "weather"})), lv.EVENT.CLICKED, None)
+ toolbox_alarm_img_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "clk_list"})), lv.EVENT.CLICKED, None)
+ # toolbox_sms_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "popup"})), lv.EVENT.CLICKED, None)
+ toolbox_countdown_img_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "countdown"})), lv.EVENT.CLICKED, None)
+ toolbox_stopwatch_img_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "stopwatch"})), lv.EVENT.CLICKED, None)
+
+
self.meta = toolbox_screen
def done_return(self):
super().__init__()
self.CALL_LOG_MAX = CALL_LOG_MAX
self.read_data = {}
+ self.meta_type = "popup"
self.volum_size = 8
check_volum = ql_fs.path_exists("/usr/static/storage_file/config.json")
if check_volum == True :
incoming_call_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
incoming_call_img = lv.img(incoming_call_screen)
- incoming_call_img.set_pos(80, 20)
- incoming_call_img.set_size(64, 64)
+ incoming_call_img.set_pos(48, 10)
+ incoming_call_img.set_size(32, 32)
incoming_call_img.set_src("U:/static/IMAGE_NOTICE_CALL.png")
incoming_call_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
incoming_call_name_label = lv.label(incoming_call_screen)
- incoming_call_name_label.set_pos(0, 140)
+ incoming_call_name_label.set_pos(0, 50)
incoming_call_name_label.set_text(" ")
- incoming_call_name_label.set_size(240, 50)
+ incoming_call_name_label.set_size(128, 40)
incoming_call_name_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
incoming_call_name_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
incoming_call_answer = lv.img(incoming_call_screen)
- incoming_call_answer.set_size(64, 64)
+ incoming_call_answer.set_size(32, 32)
incoming_call_answer.add_flag(lv.obj.FLAG.CLICKABLE)
- incoming_call_answer.set_pos(30, 220)
+ incoming_call_answer.set_pos(84, 85)
incoming_call_answer.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
incoming_call_answer.set_src("U:/static/answer.png")
incoming_call_hangup = lv.img(incoming_call_screen)
- incoming_call_hangup.set_size(64, 64)
+ incoming_call_hangup.set_size(32, 32)
incoming_call_hangup.add_flag(lv.obj.FLAG.CLICKABLE)
- incoming_call_hangup.set_pos(150, 220)
+ incoming_call_hangup.set_pos(11, 85)
incoming_call_hangup.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
incoming_call_hangup.set_src("U:/static/hang_up.png")
incoming_call_answer.add_event_cb(lambda e: EventMesh.callback_wrapper(self.answer(e)),
def __init__(self):
super().__init__()
self.meta = None
+ self.meta_type = "popup"
self.count_sec = 0
self.timer = osTimer()
self.aud = audio.Audio(0)
on_call_phone_zero ,on_call_phone_hash,on_call_phone_return_btn,\
on_call_screen_tab
if on_call_screen ==None :
+ size_x = 36 #按钮大小
+ size_y = 22
+ start_x = 5
+ start_y = 25
+ offset_y = 4
+
on_call_screen = lv.obj()
on_call_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_obj = lv.obj(on_call_screen)
- on_call_obj.set_size(240,320)
+ on_call_obj.set_size(128,128)
on_call_obj.set_pos(0,0)
on_call_obj.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
print("on_call_screen")
on_call_label_name = lv.label(on_call_obj)
- on_call_label_name.set_pos(0, 80)
- on_call_label_name.set_size(240, 50)
+ on_call_label_name.set_pos(0, 5)
+ on_call_label_name.set_size(128, 40)
on_call_label_name.set_text(" ")
on_call_label_name.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
on_call_label_name.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_second_label = lv.label(on_call_obj)
- on_call_second_label.set_pos(0, 140)
- on_call_second_label.set_size(240, 30)
+ on_call_second_label.set_pos(0, 35)
+ on_call_second_label.set_size(128, 20)
on_call_second_label.set_text("00:00")
on_call_second_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
on_call_second_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_bar = lv.bar(on_call_obj)
- on_call_bar.set_pos(49, 183)
- on_call_bar.set_size(140, 25)
+ on_call_bar.set_pos(28, 65)
+ on_call_bar.set_size(72, 12)
on_call_bar.set_style_anim_time(1000, lv.PART.INDICATOR | lv.STATE.DEFAULT)
on_call_bar.set_mode(lv.bar.MODE.NORMAL)
on_call_bar.set_value(50, lv.ANIM.OFF)
on_call_bar.add_style(style_bar_indic, lv.PART.INDICATOR | lv.STATE.DEFAULT)
on_call_volum_reduce = lv.img(on_call_obj)
- on_call_volum_reduce.set_size(36, 36)
- on_call_volum_reduce.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_volum_reduce.set_pos(4, 178)
+ on_call_volum_reduce.set_size(18, 18)
+ # on_call_volum_reduce.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_volum_reduce.set_pos(5, 62)
on_call_volum_reduce.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_volum_reduce.set_src("U:/static/REDUCE_VOLUM_ICON.png")
- on_call_volum_reduce.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_volum_size(e)),
+ # on_call_volum_reduce.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_volum_size(e)),
+ # lv.EVENT.CLICKED, None)
+
+ on_call_volum_reduce_btn = lv.img(on_call_obj)
+ on_call_volum_reduce_btn.set_size(80, 40)
+ on_call_volum_reduce_btn.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_volum_reduce_btn.set_pos(48, 50)
+ on_call_volum_reduce_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_volum_size(e)),
lv.EVENT.CLICKED, None)
+
on_call_volum_add = lv.img(on_call_obj)
- on_call_volum_add.set_size(36, 36)
- on_call_volum_add.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_volum_add.set_pos(194, 178)
+ on_call_volum_add.set_size(18, 18)
+ # on_call_volum_add.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_volum_add.set_pos(105, 62)
on_call_volum_add.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_volum_add.set_src("U:/static/VOLUM_ADD_ICON.png")
- on_call_volum_add.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_volum_size(e)),
+ # on_call_volum_add.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_volum_size(e)),
+ # lv.EVENT.CLICKED, None)
+
+ on_call_volum_add_btn = lv.img(on_call_obj)
+ on_call_volum_add_btn.set_size(40, 40)
+ on_call_volum_add_btn.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_volum_add_btn.set_pos(0, 50)
+ on_call_volum_add_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_volum_size(e)),
lv.EVENT.CLICKED, None)
on_call_volum_label = lv.label(on_call_obj)
- on_call_volum_label.set_pos(0, 270)
+ on_call_volum_label.set_pos(0, 100)
on_call_volum_label.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_volum_label.set_size(85, 50)
+ on_call_volum_label.set_size(48, 28)
on_call_volum_label.set_text("静音")
on_call_volum_label.set_style_text_align(lv.TEXT_ALIGN.CENTER,0)
on_call_volum_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
lv.EVENT.CLICKED, None)
on_call_hangup = lv.img(on_call_obj)
- on_call_hangup.set_size(64, 64)
+ on_call_hangup.set_size(32, 32)
on_call_hangup.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_hangup.set_pos(85, 245)
+ on_call_hangup.set_pos(48, 90)
on_call_hangup.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_hangup.set_src("U:/static/hang_up.png")
on_call_hangup.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hangup(e)),
lv.EVENT.CLICKED, None)
on_call_tab_label = lv.label(on_call_obj)
- on_call_tab_label.set_pos(150, 270)
+ on_call_tab_label.set_pos(80, 100)
on_call_tab_label.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_tab_label.set_size(90, 50)
+ on_call_tab_label.set_size(48, 28)
on_call_tab_label.set_text("键盘")
on_call_tab_label.set_style_text_align(lv.TEXT_ALIGN.CENTER,0)
on_call_tab_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
lv.EVENT.CLICKED, None)
on_call_screen_tab = lv.obj(on_call_screen)
- on_call_screen_tab.set_size(240,320)
+ on_call_screen_tab.set_size(128,128)
on_call_screen_tab.set_pos(0,0)
on_call_screen_tab.add_flag(lv.obj.FLAG.HIDDEN)
on_call_screen_tab.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_screen_tab_label = lv.label(on_call_screen_tab)
- on_call_screen_tab_label.set_pos(40, 34)
- on_call_screen_tab_label.set_size(0, 30)
+ on_call_screen_tab_label.set_pos(40, 5)
+ on_call_screen_tab_label.set_size(0, 20)
on_call_screen_tab_label.set_text(" ")
on_call_screen_tab_label.set_long_mode(lv.label.LONG.CLIP)
on_call_screen_tab_label.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_phone_return = lv.img(on_call_screen_tab)
on_call_phone_return.set_src("U:/static/RED_RETURN_PNG.png")
on_call_phone_return.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_return.set_pos(0, 30)
- on_call_phone_return.set_size(36, 36)
+ on_call_phone_return.set_pos(0, 5)
+ on_call_phone_return.set_size(18, 18)
on_call_phone_return_btn = lv.img(on_call_screen_tab)
on_call_phone_return_btn.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_return_btn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
on_call_phone_return_btn.set_pos(0, 0)
- on_call_phone_return_btn.set_size(50, 100)
+ on_call_phone_return_btn.set_size(50, 25)
on_call_phone_return_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.on_return_show(e)),
lv.EVENT.CLICKED, None)
-
on_call_phone_one = lv.img(on_call_screen_tab)
on_call_phone_one.set_src("U:/static/IMAGE_NUMBER_KEY1_ICON.png")
on_call_phone_one.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_one.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_one.set_pos(3, 110)
- on_call_phone_one.set_size(76, 50)
+ on_call_phone_one.set_pos(start_x, start_y)
+ on_call_phone_one.set_size(size_x, size_y)
on_call_phone_two = lv.img(on_call_screen_tab)
- on_call_phone_two.set_size(76, 50)
+ on_call_phone_two.set_size(size_x, size_y)
on_call_phone_two.set_src("U:/static/IMAGE_NUMBER_KEY2_ICON.png")
on_call_phone_two.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_two.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_two.set_pos(82, 110)
+ on_call_phone_two.set_pos(start_x+size_x+5*1, start_y)
on_call_phone_three = lv.img(on_call_screen_tab)
- on_call_phone_three.set_size(76, 50)
+ on_call_phone_three.set_size(size_x, size_y)
on_call_phone_three.set_src("U:/static/IMAGE_NUMBER_KEY3_ICON.png")
on_call_phone_three.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_three.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_three.set_pos(161, 110)#1
+ on_call_phone_three.set_pos(start_x+size_x*2+5*2, start_y)
on_call_phone_four = lv.img(on_call_screen_tab)
- on_call_phone_four.set_size(76, 50)
+ on_call_phone_four.set_size(size_x, size_y)
on_call_phone_four.set_src("U:/static/IMAGE_NUMBER_KEY4_ICON.png")
on_call_phone_four.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_four.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_four.set_pos(3, 162)
+ on_call_phone_four.set_pos(start_x, start_y+size_y+offset_y)
on_call_phone_five = lv.img(on_call_screen_tab)
- on_call_phone_five.set_size(76, 50)
+ on_call_phone_five.set_size(size_x, size_y)
on_call_phone_five.set_src("U:/static/IMAGE_NUMBER_KEY5_ICON.png")
on_call_phone_five.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_five.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_five.set_pos(82, 162)
+ on_call_phone_five.set_pos(start_x+size_x+5*1, start_y+size_y+offset_y)
on_call_phone_six = lv.img(on_call_screen_tab)
- on_call_phone_six.set_size(76, 50)
+ on_call_phone_six.set_size(size_x, size_y)
on_call_phone_six.set_src("U:/static/IMAGE_NUMBER_KEY6_ICON.png")
on_call_phone_six.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_six.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_six.set_pos(161, 162)#2
+ on_call_phone_six.set_pos(start_x+size_x*2+5*2, start_y+size_y+offset_y)
on_call_phone_seven = lv.img(on_call_screen_tab)
- on_call_phone_seven.set_size(76, 50)
- on_call_phone_seven.set_src("U:/static/IMAGE_NUMBER_KEY7_ICON.png")
+ on_call_phone_seven.set_size(size_x, size_y)
+ on_call_phone_seven.set_src("U:/static/phone_seven_icon.png")
on_call_phone_seven.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_seven.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_seven.set_pos(3, 214)
+ on_call_phone_seven.set_pos(start_x, start_y+size_y*2+offset_y*2)
on_call_phone_eight = lv.img(on_call_screen_tab)
- on_call_phone_eight.set_size(76, 50)
+ on_call_phone_eight.set_size(size_x, size_y)
on_call_phone_eight.set_src("U:/static/IMAGE_NUMBER_KEY8_ICON.png")
on_call_phone_eight.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_eight.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_eight.set_pos(82, 214)
+ on_call_phone_eight.set_pos(start_x+size_x+5*1, start_y+size_y*2+offset_y*2)
on_call_phone_nine = lv.img(on_call_screen_tab)
- on_call_phone_nine.set_size(76, 50)
- on_call_phone_nine.set_src("U:/static/IMAGE_NUMBER_KEY9_ICON.png")
+ on_call_phone_nine.set_size(size_x, size_y)
+ on_call_phone_nine.set_src("U:/static/phnone_nine_icon.png")
on_call_phone_nine.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_nine.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_nine.set_pos(161, 214)
+ on_call_phone_nine.set_pos(start_x+size_x*2+5*2, start_y+size_y*2+offset_y*2)
+
+
+ on_call_phone_xing = lv.img(on_call_screen_tab)
+ on_call_phone_xing.set_size(size_x, size_y)
+ on_call_phone_xing.set_src("U:/static/xing_icon.png")
+ on_call_phone_xing.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_phone_xing.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ on_call_phone_xing.set_pos(start_x, start_y+size_y*3+offset_y*3)
- on_call_phone_start = lv.img(on_call_screen_tab)
- on_call_phone_start.set_size(76, 50)
- on_call_phone_start.set_src("U:/static/IMAGE_NUMBER_KEYSTAR_ICON.png")
- on_call_phone_start.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_phone_start.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_start.set_pos(3, 266)
on_call_phone_zero = lv.img(on_call_screen_tab)
- on_call_phone_zero.set_size(76, 50)
+ on_call_phone_zero.set_size(size_x, size_y)
on_call_phone_zero.set_src("U:/static/IMAGE_NUMBER_KEY0_ICON.png")
on_call_phone_zero.add_flag(lv.obj.FLAG.CLICKABLE)
on_call_phone_zero.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_zero.set_pos(82, 266)
+ on_call_phone_zero.set_pos(start_x+size_x+5*1, start_y+size_y*3+offset_y*3)
+
+
+ on_call_phone_jing = lv.img(on_call_screen_tab)
+ on_call_phone_jing.set_size(size_x, size_y)
+ on_call_phone_jing.set_src("U:/static/jing_icon.png")
+ on_call_phone_jing.add_flag(lv.obj.FLAG.CLICKABLE)
+ on_call_phone_jing.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+ on_call_phone_jing.set_pos(start_x+size_x*2+5*2, start_y+size_y*3+offset_y*3)
+
+
+
- on_call_phone_hash = lv.img(on_call_screen_tab)
- on_call_phone_hash.set_size(76, 50)
- on_call_phone_hash.set_src("U:/static/IMAGE_NUMBER_KEYHASH_ICON.png")
- on_call_phone_hash.add_flag(lv.obj.FLAG.CLICKABLE)
- on_call_phone_hash.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- on_call_phone_hash.set_pos(161, 266)
self.meta = on_call_screen
+ on_call_phone_jing.add_event_cb(lambda e: EventMesh.callback_wrapper(self.jingpressed_start(e)),
+ lv.EVENT.CLICKED, None)
+ on_call_phone_xing.add_event_cb(lambda e: EventMesh.callback_wrapper(self.xingpressed_start(e)),
+ lv.EVENT.CLICKED, None)
on_call_phone_one.add_event_cb(lambda e: EventMesh.callback_wrapper(self.one(e)),
lv.EVENT.CLICKED, None)
lv.EVENT.CLICKED, None)
on_call_phone_six.add_event_cb(lambda e: EventMesh.callback_wrapper(self.six(e)),
lv.EVENT.CLICKED, None)
- on_call_phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.seven(e)),
+ on_call_phone_seven.add_event_cb(lambda e: EventMesh.callback_wrapper(self.endpressed_start(e)),
lv.EVENT.CLICKED, None)
+
on_call_phone_eight.add_event_cb(lambda e: EventMesh.callback_wrapper(self.eight(e)),
lv.EVENT.CLICKED, None)
- on_call_phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.nine(e)),
- lv.EVENT.CLICKED, None)
- on_call_phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero(e)),
- lv.EVENT.CLICKED, None)
- on_call_phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
- lv.EVENT.CLICKED, None)#短按显示*
+ on_call_phone_nine.add_event_cb(lambda e: EventMesh.callback_wrapper(self.nine_endpressed_start(e)),
+ lv.EVENT.CLICKED, None)
+
+ # phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero(e)),
+ # lv.EVENT.CLICKED, None)
- on_call_phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
+ on_call_phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
+ lv.EVENT.CLICKED, None)#短按显示*
+
+ on_call_phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.pressed_start(e)),
lv.EVENT.LONG_PRESSED, None)#长按显示+
- on_call_phone_start.add_event_cb(lambda e: EventMesh.callback_wrapper(self.endpressed_start(e)),
- lv.EVENT.RELEASED, None)#释放按键
-
- on_call_phone_hash.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hash(e)),
- lv.EVENT.CLICKED, None)
+ on_call_phone_zero.add_event_cb(lambda e: EventMesh.callback_wrapper(self.zero_endpressed_start(e)),
+ lv.EVENT.RELEASED, None)#释放按键
+
+
+
name = EventMesh.publish("get_phonename")
on_call_label_name.set_text(name)
# on_call_label.set_text(str(self.meta_info))
def show_num(self):
global on_call_screen_tab_label
#print("phone self.phone_num ",self.phone_num,self.phone_list)
- on_call_screen_tab_label.set_size(200, 30)
+ on_call_screen_tab_label.set_size(128-30, 20)
+ on_call_screen_tab_label.set_pos(20, 5)
on_call_screen_tab_label.set_text(self.phone_num)
def one(self,e):
if len(self.phone_list) >= ON_CALL_MAX_DATA:
self.phone_num = ''.join(self.phone_list)
self.show_num()
+ def zero_endpressed_start(self,e):
+ if len(self.phone_list) >= PHONE_CALL_MAX_DATA:#限制拨号数量20个数字
+ #self.phone_list.pop(0)
+ return
+
+ if self.button == 1:#长按
+ self.phone_list.append("+")
+ voiceCall.startDtmf("+",100)
+ else:#短按
+ self.phone_list.append("0")
+ voiceCall.startDtmf("0",100)
+
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
+
+ def nine_endpressed_start(self,e):
+ if len(self.phone_list) >= PHONE_CALL_MAX_DATA:#限制拨号数量20个数字
+ #self.phone_list.pop(0)
+ return
+
+ # if self.button == 1:#长按
+ # self.phone_list.append("#")
+ # voiceCall.startDtmf("#",100)
+ # else:#短按
+ self.phone_list.append("9")
+ voiceCall.startDtmf("9",100)
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
+
def start(self,e):
self.button = 0
self.timer_cb = 0
self.timer.stop()
- def endpressed_start(self,e):
+ def xingpressed_start(self,e):
if len(self.phone_list) >= ON_CALL_MAX_DATA:#限制拨号数量20个数字
self.phone_list.pop(0)
#return
# if self.button == 1:#长按
- # voiceCall.startDtmf("+",100)
- # self.phone_list.append("+")
+ # voiceCall.startDtmf("*",100)
+ # self.phone_list.append("*")
# else:#短按
voiceCall.startDtmf("*",100)
self.phone_list.append("*")
self.phone_num = ''.join(self.phone_list)
self.show_num()
+
+ def jingpressed_start(self,e):
+ if len(self.phone_list) >= ON_CALL_MAX_DATA:#限制拨号数量20个数字
+ self.phone_list.pop(0)
+ #return
+
+ # if self.button == 1:#长按
+ # voiceCall.startDtmf("*",100)
+ # self.phone_list.append("*")
+ # else:#短按
+ voiceCall.startDtmf("#",100)
+ self.phone_list.append("#")
+
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
+
+ def endpressed_start(self,e):
+ if len(self.phone_list) >= ON_CALL_MAX_DATA:#限制拨号数量20个数字
+ self.phone_list.pop(0)
+ #return
+
+ # if self.button == 1:#长按
+ # voiceCall.startDtmf("*",100)
+ # self.phone_list.append("*")
+ # else:#短按
+ voiceCall.startDtmf("7",100)
+ self.phone_list.append("7")
+
+ self.phone_num = ''.join(self.phone_list)
+ self.show_num()
def hash(self,e):
if len(self.phone_list) >= ON_CALL_MAX_DATA:#限制拨号数量20个数字
step_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
step_label = lv.label(step_screen)
- step_label.set_pos(10, 30)
- step_label.set_size(230, 50)
+ step_label.set_pos(10, 10)
+ step_label.set_size(128-10, 20)
step_label.set_text("今日步数")
step_label.set_long_mode(lv.label.LONG.WRAP)
step_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
step_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
step_label_01 = lv.label(step_screen)
- step_label_01.set_pos(0, 100)
- step_label_01.set_size(240, 50)
+ step_label_01.set_pos(0, 50)
+ step_label_01.set_size(128, 20)
step_label_01.set_text("0步")
step_label_01.set_long_mode(lv.label.LONG.WRAP)
step_label_01.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
step_label_01.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
step_img = lv.img(step_screen)
- step_img.set_pos(100, 150)
- step_img.set_size(40, 65)
+ step_img.set_pos(49, 80)
+ step_img.set_size(20, 33)
step_img.set_src("U:/static/IMAGE_STEP.png")
step_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
self.meta = step_screen
weather_img = lv.img(weather_screen)
weather_img.set_pos(10, 10)
- weather_img.set_size(135, 120)
-
+ weather_img.set_size(45, 40)
weather_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
no_weather_img = lv.img(weather_screen)
no_weather_img.set_pos(10, 10)
- no_weather_img.set_size(135, 120)
+ no_weather_img.set_size(45, 40)
no_weather_img.set_src("U:/static/update.png")
no_weather_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
weather_tem_label = lv.label(weather_screen)
- weather_tem_label.set_pos(155, 44)
- weather_tem_label.set_size(60, 50)
+ weather_tem_label.set_pos(65, 11)
+ weather_tem_label.set_size(45, 20)
weather_tem_label.set_text("_ _")
weather_tem_label.set_long_mode(lv.label.LONG.WRAP)
- weather_tem_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ weather_tem_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
weather_tem_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_weather_degree = lv.img(weather_screen)
- no_weather_degree.set_pos(200, 40)
- no_weather_degree.set_size(22, 22)
+ no_weather_degree.set_pos(88, 15)
+ no_weather_degree.set_size(11, 11)
no_weather_degree.set_src("U:/static/degree.png")
no_weather_degree.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
weather_detail_label = lv.label(weather_screen)
- weather_detail_label.set_pos(155, 80)
- weather_detail_label.set_size(85, 50)
+ weather_detail_label.set_pos(65, 30)
+ weather_detail_label.set_size(50, 50)
weather_detail_label.set_text("-/-")
weather_detail_label.set_long_mode(lv.label.LONG.WRAP)
- weather_detail_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ weather_detail_label.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
weather_detail_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
- weather_location_label = lv.label(weather_screen)
- weather_location_label.set_pos(0, 200)
- weather_location_label.set_size(240, 50)
- weather_location_label.set_text("--")
- weather_location_label.set_long_mode(lv.label.LONG.WRAP)
- weather_location_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
- weather_location_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # weather_location_label = lv.label(weather_screen)
+ # weather_location_label.set_pos(0, 60)
+ # weather_location_label.set_size(128, 50)
+ # weather_location_label.set_text("--")
+ # weather_location_label.set_long_mode(lv.label.LONG.WRAP)
+ # weather_location_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ # weather_location_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_connect_label = lv.label(weather_screen)
- no_connect_label.set_pos(0, 200)
- no_connect_label.set_size(240, 40)
+ no_connect_label.set_pos(0, 60)
+ no_connect_label.set_size(128, 20)
no_connect_label.set_text("找不到服务器")
no_connect_label.set_long_mode(lv.label.LONG.WRAP)
no_connect_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
no_connect_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
no_connect_label1 = lv.label(weather_screen)
- no_connect_label1.set_pos(0, 250)
- no_connect_label1.set_size(240, 70)
+ no_connect_label1.set_pos(0, 90)
+ no_connect_label1.set_size(128, 20)
no_connect_label1.set_text("请联网后重试")
no_connect_label1.set_long_mode(lv.label.LONG.WRAP)
no_connect_label1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
if no_data != 0 :
no_weather_img.add_flag(lv.obj.FLAG.HIDDEN)
weather_img.clear_flag(lv.obj.FLAG.HIDDEN)
- no_connect_label.set_text(" ")
+ # no_connect_label.set_text(" ")
no_connect_label1.set_text(" ")
# print("self.weather_data:{}".format(self.weather_data))
type = self.weather_data[3]
city = self.weather_data[7]
if city != '{}':
- weather_location_label.set_text("{}".format(city))#城市
+ no_connect_label.set_text("{}".format(city))#城市
else:
- weather_location_label.set_text("--")
+ no_connect_label.set_text("--")
else:#已联网未获取到天气数据
- weather_location_label.set_text(" ")
+ # no_connect_label.set_text(" ")
weather_detail_label.set_text("-/-")
weather_tem_label.set_text("_ _")
no_connect_label1.set_text("请稍候重试")
else:
- weather_location_label.set_text(" ")
+
weather_detail_label.set_text("-/-")
weather_tem_label.set_text("_ _")
contacts_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
contacts_screen_list_screen = lv.obj(contacts_screen)
- contacts_screen_list_screen.set_pos(0, 50)
- contacts_screen_list_screen.set_size(240, 270)
+ contacts_screen_list_screen.set_pos(0, 30)
+ contacts_screen_list_screen.set_size(LCD_X, LCD_Y-30)
contacts_screen_list_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
contacts_screen_list_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
contacts_top_title = lv.label(contacts_screen)
contacts_top_title.set_pos(0, 10)
- contacts_top_title.set_size(240, 40)
+ contacts_top_title.set_size(LCD_X, 20)
contacts_top_title.set_text("联系人")
contacts_top_title.set_long_mode(lv.label.LONG.WRAP)
contacts_top_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
contact_none_label = lv.label(contacts_screen_list_screen)
- contact_none_label.set_pos(0, 80)
- contact_none_label.set_size(240, 40)
+ contact_none_label.set_pos(0, (LCD_Y-30)//2)
+ contact_none_label.set_size(LCD_X, 40)
contact_none_label.set_text("空")
contact_none_label.set_long_mode(lv.label.LONG.WRAP)
contact_none_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
self.contact_detail_list = lv.obj(contacts_screen_list_screen)
self.contact_detail_list.set_pos(0, 0)
- self.contact_detail_list.set_size(240, 271)
+ self.contact_detail_list.set_size(LCD_X, LCD_Y-30+1)
self.contact_detail_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
self.contact_detail_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
for i in range(self.MXA_phone_num):
print("self.phonebook sorted :{} len(self.phonebook) :{}".format(sorted(self.phonebook.keys()),len(self.phonebook)))
phonebook_keys = sorted(self.phonebook.keys())
- # self.contact_detail_list.delete()#先删除一次控件
- # self.contact_detail_list = lv.obj(contacts_screen_list_screen)
- # self.contact_detail_list.set_pos(0, 0)
- # self.contact_detail_list.set_size(240, 271)
- # self.contact_detail_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
- # self.contact_detail_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
- # print("self.phonebook sorted :{}".format(len(self.phonebook)))
+
if len(self.phonebook) > self.MXA_phone_num:
j = len(self.phonebook) - self.MXA_phone_num
for i in range(self.MXA_phone_num): #字典 key value
print("name :{} key_tmp:{}".format(name,key_tmp))
#contact_btn = lv.btn(self.contact_detail_list)
- self.contact_detail_listt_dict[i]["contact_btn"].set_size(230,80)
- self.contact_detail_listt_dict[i]["contact_btn"].set_pos(0,82*i )
+ self.contact_detail_listt_dict[i]["contact_btn"].set_size(LCD_X,45)
+ self.contact_detail_listt_dict[i]["contact_btn"].set_pos(0,47*i )
self.contact_detail_listt_dict[i]["contact_btn"].add_style(style_contact_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
# contact_btn.add_style(style_contact_btn_pressed, lv.PART.MAIN | lv.STATE.PRESSED)
# self.contact_detail_listt_dict[i]["contact_btn"].add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling(e)),
# lv.EVENT.CLICKED, None)
#contact_btn_label_1 = lv.label(contact_btn)
- self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_pos(0, 5)
- self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_size(180, 25)
+ self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_pos(5, 4)
+ self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_size(LCD_X-15, 20)
self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_text(key_tmp[4:])
self.contact_detail_listt_dict[i]["contact_btn_label_1"].set_long_mode(lv.label.LONG.DOT)
self.contact_detail_listt_dict[i]["contact_btn_label_1"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
#contact_btn_label_3 = lv.label(contact_btn)
- self.contact_detail_listt_dict[i]["contact_btn_label_3"].set_pos(0, 30)
- self.contact_detail_listt_dict[i]["contact_btn_label_3"].set_size(220, 35)
+ self.contact_detail_listt_dict[i]["contact_btn_label_3"].set_pos(5, 24)
+ self.contact_detail_listt_dict[i]["contact_btn_label_3"].set_size(LCD_X-15, 21)
self.contact_detail_listt_dict[i]["contact_btn_label_3"].set_text(name)
self.contact_detail_listt_dict[i]["contact_btn_label_3"].add_style(style_font_youyuan_20_black, lv.PART.MAIN | lv.STATE.DEFAULT)
self.total = 0
self.time_tmp = 0
self.timer_cb = 0
+ EventMesh.subscribe("close_count_show_info", self.close_count_show_info)
def initialization(self):
global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\
countdown_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_title = lv.label(countdown_screen)
- countdown_title.set_pos(0, 20)
- countdown_title.set_size(240, 20)
+ countdown_title.set_pos(0, 5)
+ countdown_title.set_size(128, 20)
countdown_title.set_text("倒计时")
countdown_title.set_long_mode(lv.label.LONG.WRAP)
countdown_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
countdown_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_hour = lv.label(countdown_screen)
- countdown_hour.set_pos(30, 140)
- countdown_hour.set_size(60, 30)
+ countdown_hour.set_pos(19, 50)
+ countdown_hour.set_size(40, 30)
countdown_hour.set_text("00")
countdown_hour.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_hour.set_long_mode(lv.label.LONG.WRAP)
countdown_hour.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
countdown_mao = lv.label(countdown_screen)
- countdown_mao.set_pos(82, 138)
- countdown_mao.set_size(30, 30)
+ countdown_mao.set_pos(45, 50)
+ countdown_mao.set_size(20, 20)
countdown_mao.set_text(":")
countdown_mao.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_mao.set_long_mode(lv.label.LONG.WRAP)
countdown_min = lv.label(countdown_screen)
- countdown_min.set_pos(95, 140)
- countdown_min.set_size(60, 30)
+ countdown_min.set_pos(55, 50)
+ countdown_min.set_size(40, 30)
countdown_min.set_text("00")
countdown_min.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_min.set_long_mode(lv.label.LONG.WRAP)
countdown_min.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
countdown_mao1 = lv.label(countdown_screen)
- countdown_mao1.set_pos(146, 138)
- countdown_mao1.set_size(30, 30)
+ countdown_mao1.set_pos(81, 50)
+ countdown_mao1.set_size(20, 20)
countdown_mao1.set_text(":")
countdown_mao1.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_mao1.set_long_mode(lv.label.LONG.WRAP)
countdown_sec = lv.label(countdown_screen)
- countdown_sec.set_pos(160, 140)
- countdown_sec.set_size(60, 30)
+ countdown_sec.set_pos(91, 50)
+ countdown_sec.set_size(128-91, 20)
countdown_sec.set_text("00")
countdown_sec.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_sec.set_long_mode(lv.label.LONG.WRAP)
countdown_sec.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
countdown_hour_up = lv.img(countdown_screen)
- countdown_hour_up.set_size(34, 30)
- countdown_hour_up.set_pos(36, 100)
+ countdown_hour_up.set_size(17, 15)
+ countdown_hour_up.set_pos(19, 30)
countdown_hour_up.set_src("U:/static/time_up.png")
+ countdown_hour_up.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_hour_up.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_hour_up_btn= lv.img(countdown_screen)
- countdown_hour_up_btn.set_size(62, 70)
- countdown_hour_up_btn.set_pos(20, 80)
+ countdown_hour_up_btn.set_size(45, 40)
+ countdown_hour_up_btn.set_pos(0, 25)
countdown_hour_up_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_hour_down = lv.img(countdown_screen)
- countdown_hour_down.set_size(34, 30)
- countdown_hour_down.set_pos(36, 180)
+ countdown_hour_down.set_size(17, 15)
+ countdown_hour_down.set_pos(19, 70)
countdown_hour_down.set_src("U:/static/time_down.png")
countdown_hour_down.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_hour_down.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_hour_down_btn= lv.img(countdown_screen)
- countdown_hour_down_btn.set_size(62, 80)
- countdown_hour_down_btn.set_pos(20, 150)
+ countdown_hour_down_btn.set_size(45, 40)
+ countdown_hour_down_btn.set_pos(0, 65)
countdown_hour_down_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_min_up = lv.img(countdown_screen)
- countdown_min_up.set_size(34, 30)
- countdown_min_up.set_pos(99, 100)
+ countdown_min_up.set_size(17, 15)
+ countdown_min_up.set_pos(53+2, 30)
countdown_min_up.set_src("U:/static/time_up.png")
countdown_min_up.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_min_up.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_min_up_btn= lv.img(countdown_screen)
- countdown_min_up_btn.set_size(64, 70)
- countdown_min_up_btn.set_pos(82, 80)
+ countdown_min_up_btn.set_size(36, 40)
+ countdown_min_up_btn.set_pos(45, 25)
countdown_min_up_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_min_down = lv.img(countdown_screen)
- countdown_min_down.set_size(34, 30)
- countdown_min_down.set_pos(99, 180)
+ countdown_min_down.set_size(17, 15)
+ countdown_min_down.set_pos(53+2, 70)
countdown_min_down.set_src("U:/static/time_down.png")
countdown_min_down.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_min_down.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_min_down_btn= lv.img(countdown_screen)
- countdown_min_down_btn.set_size(64, 80)
- countdown_min_down_btn.set_pos(82, 150)
+ countdown_min_down_btn.set_size(36, 40)
+ countdown_min_down_btn.set_pos(45, 65)
countdown_min_down_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_sec_up = lv.img(countdown_screen)
- countdown_sec_up.set_size(34, 30)
- countdown_sec_up.set_pos(165, 100)
+ countdown_sec_up.set_size(17, 15)
+ countdown_sec_up.set_pos(91, 30)
countdown_sec_up.set_src("U:/static/time_up.png")
+ countdown_sec_up.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_sec_up.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_sec_up_btn = lv.img(countdown_screen)
- countdown_sec_up_btn.set_size(64, 70)
- countdown_sec_up_btn.set_pos(146, 80)
+ countdown_sec_up_btn.set_size(128-81, 40)
+ countdown_sec_up_btn.set_pos(81, 25)
countdown_sec_up_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_sec_down = lv.img(countdown_screen)
- countdown_sec_down.set_size(34, 30)
- countdown_sec_down.set_pos(165, 180)
+ countdown_sec_down.set_size(17, 15)
+ countdown_sec_down.set_pos(91, 70)
countdown_sec_down.set_src("U:/static/time_down.png")
countdown_sec_down.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_sec_down.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_sec_down_btn = lv.img(countdown_screen)
- countdown_sec_down_btn.set_size(64, 80)
- countdown_sec_down_btn.set_pos(146, 150)
+ countdown_sec_down_btn.set_size(128-81, 40)
+ countdown_sec_down_btn.set_pos(81, 65)
countdown_sec_down_btn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_reset_img = lv.img(countdown_screen)
- countdown_reset_img.set_size(99, 36)
+ countdown_reset_img.set_size(50, 18)
countdown_reset_img.set_src("U:/static/stopwatch_reset.png")
countdown_reset_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- countdown_reset_img.set_pos(10, 260)
+ countdown_reset_img.set_pos(8, 100)
countdown_reset_imgbtn = lv.img(countdown_screen)
- countdown_reset_imgbtn.set_size(99, 70)
+ countdown_reset_imgbtn.set_size(66, 23)
countdown_reset_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_reset_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- countdown_reset_imgbtn.set_pos(10, 240)
+ countdown_reset_imgbtn.set_pos(0, 105)
countdown_start_img = lv.img(countdown_screen)
- countdown_start_img.set_size(99, 36)
+ countdown_start_img.set_size(50, 18)
countdown_start_img.set_src("U:/static/stopwatch_play.png")
countdown_start_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- countdown_start_img.set_pos(120, 260)
+ countdown_start_img.set_pos(66, 100)
countdown_start_imgbtn = lv.img(countdown_screen)
- countdown_start_imgbtn.set_size(99, 70)
+ countdown_start_imgbtn.set_size(128-66, 23)
countdown_start_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
countdown_start_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- countdown_start_imgbtn.set_pos(120, 240)
+ countdown_start_imgbtn.set_pos(66, 105)
countdown_stop_img = lv.img(countdown_screen)
- countdown_stop_img.set_size(99, 36)
+ countdown_stop_img.set_size(50, 18)
countdown_stop_img.set_src("U:/static/stopwatch_stop.png")
countdown_stop_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- countdown_stop_img.set_pos(120, 260)
+ countdown_stop_img.set_pos(66, 100)
countdown_stop_img.add_flag(lv.obj.FLAG.HIDDEN)
+
countdown_start_img.clear_flag(lv.obj.FLAG.HIDDEN)
countdown_stop_img.add_flag(lv.obj.FLAG.HIDDEN)
self.g_state = msg_tmp[1]
EventMesh.publish("set_countdown_off_state", [0,self.g_state])
+ def close_count_show_info(self, event, msg):
+ self.reset(0)
+
def reset(self,e):
global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\
countdown_sec ,countdown_hour_up ,countdown_hour_up_btn ,countdown_hour_down ,countdown_hour_down_btn ,\
self.FIND_timer=osTimer()
self.aud = audio.Audio(0)
self.FIND_timer_count = 0
+ self.meta_type = "popup"
def initialization(self):
global countdown_end_screen ,countdown_end_img ,countdown_end_label
print("countdown_end_screen")
countdown_end_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_end_img = lv.img(countdown_end_screen)
- countdown_end_img.set_size(140, 140)
- countdown_end_img.set_pos(50, 60)
+ countdown_end_img.set_size(38, 57)
+ countdown_end_img.set_pos(45, 20)
countdown_end_img.set_src("U:/static/time_finish.png")
countdown_end_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_end_label = lv.label(countdown_end_screen)
- countdown_end_label.set_pos(0, 240)
- countdown_end_label.set_size(240, 40)
+ countdown_end_label.set_pos(0, 90)
+ countdown_end_label.set_size(128, 38)
countdown_end_label.set_text("时间到")
countdown_end_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
countdown_end_label.set_long_mode(lv.label.LONG.WRAP)
countdown_end_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
self.meta = countdown_end_screen
self.FIND_timer_count = 0
- self.FIND_timer.start(3000, 1, self.FIND_timer_cb)
- self.aud.play(1, 1, 'U:/static/audio_audio_haixiu.mp3') #播放声音
+ EventMesh.publish("close_count_show_info")
+ self.FIND_timer.start(2000, 1, self.FIND_timer_cb)
+ self.aud.play(1, 1, 'U:/static/R_VOLUME_SET_1.mp3') #播放声音
def FIND_timer_cb(self, *args):
EventMesh.publish("system_sleep_rest")#防止黑屏
self.stop_FIND()
EventMesh.publish("load_screen", {"screen": "countdown"})
return
- self.aud.play(1, 1, 'U:/static/audio_audio_haixiu.mp3')
+ self.aud.play(1, 1, 'U:/static/R_VOLUME_SET_1.mp3')
def stop_FIND(self) :
self.FIND_timer.stop()
def initialization(self):
global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\
- stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\
+ stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img,stopwatch_start_img ,\
stopwatch_start_imgbtn, stopwatch_stop_img
if stopwatch_screen == None :
stopwatch_screen = lv.obj()
stopwatch_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
stopwatch_title = lv.label(stopwatch_screen)
- stopwatch_title.set_pos(0, 20)
- stopwatch_title.set_size(240, 20)
+ stopwatch_title.set_pos(0, 5)
+ stopwatch_title.set_size(128, 20)
stopwatch_title.set_text("秒表")
stopwatch_title.set_long_mode(lv.label.LONG.WRAP)
stopwatch_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
stopwatch_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_label_min = lv.label(stopwatch_screen)
- stopwatch_label_min.set_pos(30, 140)
- stopwatch_label_min.set_size(60, 30)
- stopwatch_label_min.set_text("00")
- stopwatch_label_min.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_label_min.set_long_mode(lv.label.LONG.WRAP)
- stopwatch_label_min.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ # stopwatch_label_min = lv.label(stopwatch_screen)
+ # stopwatch_label_min.set_pos(30, 140)
+ # stopwatch_label_min.set_size(60, 30)
+ # stopwatch_label_min.set_text("00")
+ # stopwatch_label_min.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # stopwatch_label_min.set_long_mode(lv.label.LONG.WRAP)
+ # stopwatch_label_min.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
- stopwatch_mao = lv.label(stopwatch_screen)
- stopwatch_mao.set_pos(82, 138)
- stopwatch_mao.set_size(30, 30)
- stopwatch_mao.set_text(":")
- stopwatch_mao.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_mao.set_long_mode(lv.label.LONG.WRAP)
- stopwatch_mao.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ # stopwatch_mao = lv.label(stopwatch_screen)
+ # stopwatch_mao.set_pos(82, 138)
+ # stopwatch_mao.set_size(30, 30)
+ # stopwatch_mao.set_text(":")
+ # stopwatch_mao.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # stopwatch_mao.set_long_mode(lv.label.LONG.WRAP)
+ # stopwatch_mao.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
stopwatch_label_sec = lv.label(stopwatch_screen)
- stopwatch_label_sec.set_pos(95, 140)
- stopwatch_label_sec.set_size(60, 30)
- stopwatch_label_sec.set_text("00")
+ stopwatch_label_sec.set_pos(0, 50)
+ stopwatch_label_sec.set_size(128, 30)
+ stopwatch_label_sec.set_text("00:00.0")
stopwatch_label_sec.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
stopwatch_label_sec.set_long_mode(lv.label.LONG.WRAP)
- stopwatch_label_sec.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ stopwatch_label_sec.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
- stopwatch_mao1 = lv.label(stopwatch_screen)
- stopwatch_mao1.set_pos(146, 138)
- stopwatch_mao1.set_size(30, 30)
- stopwatch_mao1.set_text(".")
- stopwatch_mao1.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_mao1.set_long_mode(lv.label.LONG.WRAP)
- stopwatch_mao1.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ # stopwatch_mao1 = lv.label(stopwatch_screen)
+ # stopwatch_mao1.set_pos(146, 138)
+ # stopwatch_mao1.set_size(30, 30)
+ # stopwatch_mao1.set_text(".")
+ # stopwatch_mao1.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # stopwatch_mao1.set_long_mode(lv.label.LONG.WRAP)
+ # stopwatch_mao1.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
- stopwatch_label_ms = lv.label(stopwatch_screen)
- stopwatch_label_ms.set_pos(160, 140)
- stopwatch_label_ms.set_size(60, 30)
- stopwatch_label_ms.set_text("0")
- stopwatch_label_ms.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_label_ms.set_long_mode(lv.label.LONG.WRAP)
- stopwatch_label_ms.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+ # stopwatch_label_ms = lv.label(stopwatch_screen)
+ # stopwatch_label_ms.set_pos(160, 140)
+ # stopwatch_label_ms.set_size(60, 30)
+ # stopwatch_label_ms.set_text("0")
+ # stopwatch_label_ms.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # stopwatch_label_ms.set_long_mode(lv.label.LONG.WRAP)
+ # stopwatch_label_ms.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
stopwatch_reset_img = lv.img(stopwatch_screen)
- stopwatch_reset_img.set_size(99, 36)
+ stopwatch_reset_img.set_size(50, 18)
stopwatch_reset_img.set_src("U:/static/stopwatch_reset.png")
stopwatch_reset_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_reset_img.set_pos(10, 210)
+ stopwatch_reset_img.set_pos(8, 90)
stopwatch_reset_imgbtn = lv.img(stopwatch_screen)
- stopwatch_reset_imgbtn.set_size(99, 76)
+ stopwatch_reset_imgbtn.set_size(62, 33)
stopwatch_reset_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
- stopwatch_reset_imgbtn.set_pos(10, 190)
+ stopwatch_reset_imgbtn.set_pos(0, 85)
stopwatch_start_img = lv.img(stopwatch_screen)
- stopwatch_start_img.set_size(99, 36)
+ stopwatch_start_img.set_size(50, 18)
stopwatch_start_img.set_src("U:/static/stopwatch_play.png")
stopwatch_start_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_start_img.set_pos(115, 210)
+ stopwatch_start_img.set_pos(66, 90)
stopwatch_start_imgbtn = lv.img(stopwatch_screen)
- stopwatch_start_imgbtn.set_size(99, 76)
+ stopwatch_start_imgbtn.set_size(128-62, 33)
stopwatch_start_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
- stopwatch_start_imgbtn.set_pos(115, 190)
+ stopwatch_start_imgbtn.set_pos(62, 85)
stopwatch_stop_img = lv.img(stopwatch_screen)
- stopwatch_stop_img.set_size(99, 36)
+ stopwatch_stop_img.set_size(50, 18)
stopwatch_stop_img.set_src("U:/static/stopwatch_stop.png")
stopwatch_stop_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
- stopwatch_stop_img.set_pos(115, 210)
+ stopwatch_stop_img.set_pos(66, 90)
stopwatch_stop_img.add_flag(lv.obj.FLAG.HIDDEN)
stopwatch_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)),
lv.EVENT.CLICKED, None)
def start(self, e):
global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\
- stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\
+ stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_start_img ,\
stopwatch_start_imgbtn, stopwatch_stop_img
print("stopwatch start:{}".format(self.s_state))
#self.timer.start(100, 1, self._fun)
def paused(self):
global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\
- stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\
+ stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_start_img ,\
stopwatch_start_imgbtn, stopwatch_stop_img
print("stopwatch pause")
stopwatch_start_img.clear_flag(lv.obj.FLAG.HIDDEN)
def reset(self,e):
global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\
- stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\
+ stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_start_img ,\
stopwatch_start_imgbtn, stopwatch_stop_img
print("stopwatch reset")
def show_value(self):
global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\
- stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\
+ stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_start_img ,\
stopwatch_start_imgbtn, stopwatch_stop_img
if self.total_time >= 99*60:
self.total_time = 99*60
test_m = self.total_time//60
# print("test_s:{} test_m:{} self.total_time:{}".format(test_s,test_m,self.total_time))
- stopwatch_label_ms.set_text(str("%d"%(self.ms_value)))
- stopwatch_label_sec.set_text(str("%02d"%(test_s)))
- stopwatch_label_min.set_text(str("%02d"%(test_m)))
+ # stopwatch_label_ms.set_text(str("%d"%(self.ms_value)))
+
+ stopwatch_label_sec.set_text("{}:{}.{}".format("%02d"%(test_m),"%02d"%(test_s),"%d"%(self.ms_value)))
+ # stopwatch_label_min.set_text(str("%02d"%(test_m)))
def Close(self):
if self.s_state == 1:
super().__init__()
self.read_data = {}
self.volum_size = 8
+
check_volum = ql_fs.path_exists("/usr/static/storage_file/config.json")
if check_volum == True :
with open("/usr/static/storage_file/config.json","r") as fd:#音频文件编号
self.aud.setVolume(self.volum_size)
self.FIND_timer = osTimer()
self.FIND_timer_count = 0
-
self.meta = None
+ self.meta_type = "popup"
def initialization(self):
- global FIND_screen ,watchface_mpsignal_img
+ global FIND_screen ,findphone_img
if FIND_screen ==None:
FIND_screen = lv.obj()
# add style for watchface
FIND_screen.add_style(style_screen, lv.PART.MAIN|lv.STATE.DEFAULT)
#进入图片
- watchface_mpsignal_img = lv.img(FIND_screen)
- watchface_mpsignal_img.set_pos(int(40),int(45))
- watchface_mpsignal_img.set_size(160,230)
- watchface_mpsignal_img.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
- watchface_mpsignal_img.add_flag(lv.obj.FLAG.CLICKABLE)
- watchface_mpsignal_img.set_src("U:/static/find_phone.png")
- watchface_mpsignal_img.add_style(style_screen, lv.PART.MAIN|lv.STATE.DEFAULT)
+ findphone_img = lv.img(FIND_screen)
+ findphone_img.set_pos(int(15),int(10))
+ findphone_img.set_size(98,66)
+ findphone_img.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
+ findphone_img.add_flag(lv.obj.FLAG.CLICKABLE)
+ findphone_img.set_src("U:/static/find_phone.png")
+ findphone_img.add_style(style_screen, lv.PART.MAIN|lv.STATE.DEFAULT)
+
+ findphone_img_label = lv.label(FIND_screen)
+ findphone_img_label.set_pos(int(0),int(90))
+ findphone_img_label.set_size(128,66)
+ findphone_img_label.set_text("点击关闭屏幕")
+ findphone_img_label.set_style_text_align(lv.TEXT_ALIGN.CENTER,0)
+
+
self.meta = FIND_screen
utime.sleep_ms(200)#不加延时会切屏
self.FIND_timer_count = 0
print("self.FIND_timer_count:{}".format(self.FIND_timer_count))
- self.FIND_timer.start(3000, 1, self.FIND_timer_cb)
- self.aud.play(1, 1, 'U:/static/audio_audio_haixiu.mp3') #播放声音
+ self.FIND_timer.start(2000, 1, self.FIND_timer_cb)
+ self.aud.play(1, 1, 'U:/static/R_VOLUME_SET_1.mp3') #播放声音
def FIND_timer_cb(self, *args):
EventMesh.publish("system_sleep_rest")
- self.aud.play(1, 1, 'U:/static/audio_audio_haixiu.mp3')
+ self.aud.play(1, 1, 'U:/static/R_VOLUME_SET_1.mp3')
self.FIND_timer_count += 1
if self.FIND_timer_count > 20: #120秒
self.stop_FIND()
LowOnePower_screen.add_style(style_screen, lv.PART.MAIN|lv.STATE.DEFAULT)
#进入图片
LowOnePower_screen_img = lv.img(LowOnePower_screen)
- LowOnePower_screen_img.set_pos(int(86),int(30))
- LowOnePower_screen_img.set_size(68,110)
+ LowOnePower_screen_img.set_pos(int(47),int(10))
+ LowOnePower_screen_img.set_size(34,55)
LowOnePower_screen_img.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
LowOnePower_screen_img.add_flag(lv.obj.FLAG.CLICKABLE)
LowOnePower_screen_img.set_src("U:/static/0_BAT.png")
LowOnePower_screen_img.add_style(style_screen, lv.PART.MAIN|lv.STATE.DEFAULT)
LowOnePower_screen_label1 = lv.label(LowOnePower_screen)
- LowOnePower_screen_label1.set_pos(0, 180)
- LowOnePower_screen_label1.set_size(240, 60)
- LowOnePower_screen_label1.set_text("电池电量过低,请及时充电")
+ LowOnePower_screen_label1.set_pos(0, 90)
+ LowOnePower_screen_label1.set_size(128, 20)
+ LowOnePower_screen_label1.set_text("电池电量过低")
LowOnePower_screen_label1.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
LowOnePower_screen_label1.set_long_mode(lv.label.LONG.WRAP)
LowOnePower_screen_label1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
- LowOnePower_screen_label2 = lv.label(LowOnePower_screen)
- LowOnePower_screen_label2.set_pos(0, 250)
- LowOnePower_screen_label2.set_size(240, 60)
- LowOnePower_screen_label2.set_text("继续使用,5s过后强制关机")
- LowOnePower_screen_label2.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
- LowOnePower_screen_label2.set_long_mode(lv.label.LONG.WRAP)
- LowOnePower_screen_label2.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+ # LowOnePower_screen_label2 = lv.label(LowOnePower_screen)
+ # LowOnePower_screen_label2.set_pos(0, 100)
+ # LowOnePower_screen_label2.set_size(128, 20)
+ # LowOnePower_screen_label2.set_text("继续使用,5s过后强制关机")
+ # LowOnePower_screen_label2.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+ # LowOnePower_screen_label2.set_long_mode(lv.label.LONG.WRAP)
+ # LowOnePower_screen_label2.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
self.meta = LowOnePower_screen
def post_processor_after_initialization(self):
self.timer.start(5000,0,self.fun)
+
+
def fun(self,e):
EventMesh.publish("load_screen", {"screen": "poweroff_comfirm"})
self.system_sleep_timer = osTimer()
self.system_sleep_timer_count = 0
self.sleep_flag = 1
- self.level = 6
+ self.level = 60
self.read_data = {}
self.aud = audio.Audio(0)
self.level = EventMesh.publish("get_brightness_level")
if b == True:
self.level = self.read_data["brightness_level"]
else:
- self.level = 6
+ self.level = 60
self.read_data["brightness_level"] = self.level
EventMesh.publish("set_storage_data", self.read_data)
with open("/usr/static/storage_file/config.json","w",encoding="utf-8") as fd:
ujson.dump(self.read_data,fd)
else:
- self.level = 6 #默认是6级别
+ self.level = 60 #默认是6级别
if self.level == None:
- self.level = 6
- self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, self.level, 10)
+ self.level = 60
+ self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, self.level, 100)
self.PWM_backlight.open()
self.sleep_lock = 0
utime.sleep_ms(60)
self.level = EventMesh.publish("get_brightness_level")
if self.level == None:
- self.level = 6
- elif self.level > 10:
- self.level = 10
+ self.level = 60
+ elif self.level > 100:
+ self.level = 100
elif self.level <= 0:
- self.level = 1
- self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, self.level, 10)
+ self.level = 10
+ print("__lcd_on self.level:",self.level)
+ self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, self.level, 100)
self.PWM_backlight.open()
self.sleep_lock = 0
-
def publish_call_in(self, event, msg):
EventMesh.publish("load_screen", {"screen": "dialing", "meta": msg})
utime.sleep_ms(200)
self.sleep_lock = 1
self.sleep_flag = 0
- self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, 0, 1)
+ self.PWM_backlight = PWM(PWM.PWM1, PWM.ABOVE_10US, 0, 100)
self.PWM_backlight.open()
#lcd_ctrl.write(0)
#
EventMesh.publish("publish_message_event_ui",{"func":self.load_screen,"data":msg})
def load_screen(self, msg):
- print("msg1={}".format(msg))
+ print("msg1={} self.UI_high_priority_flag:{}".format(msg,self.UI_high_priority_flag))
if self.UI_high_priority_flag == 1:#电话界面屏蔽其他界面
return
if self.screen :
# -------------------------------------------setting screen----------------------------------------------------------
-
+set_icon_x = 25
+set_icon_y = 25
style_volume_btn = lv.style_t()
style_volume_btn.init()
print("setting_screen")
setting_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_imei_img = lv.img(setting_screen)
-setting_imei_img.set_pos(75, 10)
-setting_imei_img.set_size(90, 30)
-setting_imei_img.set_src("U:/static/setting/setting_text.png")
-setting_imei_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-# setting_title = lv.label(setting)
-# setting_title.set_pos(0, 10)
-# setting_title.set_size(240, 40)
-# setting_title.set_text("设置")
-# setting_title.set_long_mode(lv.label.LONG.WRAP)
-# setting_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-# setting_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+# setting_imei_img = lv.img(setting_screen)
+# setting_imei_img.set_pos(75, 10)
+# setting_imei_img.set_size(90, 30)
+# setting_imei_img.set_src("U:/static/setting/setting_text.png")
+# setting_imei_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+setting_title = lv.label(setting_screen)
+setting_title.set_pos(0, 5)
+setting_title.set_size(128, 20)
+setting_title.set_text("设置")
+setting_title.set_long_mode(lv.label.LONG.WRAP)
+setting_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+setting_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
setting_cont_style = lv.style_t()
setting_cont_style.init()
setting_cont_style.set_radius(0)
setting_cont = lv.obj(setting_screen)
-setting_cont.set_pos(0, 50)
-setting_cont.set_size(240, 270)
+setting_cont.set_pos(0, 25)
+setting_cont.set_size(128, 128-25)
setting_cont.add_style(setting_cont_style,lv.PART.MAIN | lv.STATE.DEFAULT)
# setting_language = lv.btn(setting_cont)
setting_dialswitch = lv.btn(setting_cont)
setting_dialswitch.set_pos(0, setting_cont_y)
setting_dialswitch.set_size(0, 0)
-setting_dialswitch_label = lv.label(setting_dialswitch)
+setting_dialswitch_label = lv.label(setting_cont)
setting_dialswitch_label.set_text("表盘切换")
setting_dialswitch.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_dialswitch_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_dialswitch_label.set_pos(34, setting_cont_y+5)
+setting_dialswitch_label.set_size(128-34, 35)
+setting_dialswitch_label.add_flag(lv.obj.FLAG.CLICKABLE)
+# setting_dialswitch_label.set_text_align(lv.ALIGN.LEFT_MID, 30, setting_cont_y)
setting_dialswitch_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_dialswitch_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_dialswitch.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_dialswitch_img = lv.img(setting_cont)
-setting_dialswitch_img.set_pos(0, setting_cont_y)
-setting_dialswitch_img.set_size(232, 80)
+setting_dialswitch_img.set_pos(4, setting_cont_y)
+setting_dialswitch_img.set_size(set_icon_x, set_icon_y)
setting_dialswitch_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_dialswitch_img.set_src("U:/static/setting/menu_watch_switch.png")
+setting_dialswitch_img.set_src("U:/static/menu_watch_switch.png")
setting_dialswitch_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
# setting_themeswitch = lv.btn(setting_cont)
setting_imei = lv.btn(setting_cont)
setting_imei.set_pos(0, setting_cont_y)
setting_imei.set_size(0, 0)
-setting_imei_label = lv.label(setting_imei)
+setting_imei_label = lv.label(setting_cont)
setting_imei_label.set_text("设备IMEI号")
setting_imei.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_imei_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_imei_label.set_pos(34, setting_cont_y+5)
+setting_imei_label.set_size(128-34, 35)
+setting_imei_label.add_flag(lv.obj.FLAG.CLICKABLE)
setting_imei_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_imei_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_imei.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_imei_img = lv.img(setting_cont)
-setting_imei_img.set_pos(0, setting_cont_y)
-setting_imei_img.set_size(232, 80)
+setting_imei_img.set_pos(4, setting_cont_y)
+setting_imei_img.set_size(set_icon_x, set_icon_y)
setting_imei_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_imei_img.set_src("U:/static/setting/menu_imei_qrcode.png")
+setting_imei_img.set_src("U:/static/menu_imei_qrcode.png")
setting_imei_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_app = lv.btn(setting_cont)
setting_app.set_pos(0, setting_cont_y)
setting_app.set_size(0, 0)
-setting_app_label = lv.label(setting_app)
+setting_app_label = lv.label(setting_cont)
setting_app_label.set_text("手机安装APP")
setting_app.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_app_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_app_label.set_pos(34, setting_cont_y+5)
+setting_app_label.set_size(128-34, 35)
+setting_app_label.add_flag(lv.obj.FLAG.CLICKABLE)
setting_app_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_app_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_app.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_app_img = lv.img(setting_cont)
-setting_app_img.set_pos(0, setting_cont_y)
-setting_app_img.set_size(232, 80)
+setting_app_img.set_pos(4, setting_cont_y)
+setting_app_img.set_size(set_icon_x, set_icon_y)
setting_app_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_app_img.set_src("U:/static/setting/menu_app_qrcode.png")
+setting_app_img.set_src("U:/static/menu_app_qrcode.png")
setting_app_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_bright = lv.btn(setting_cont)
setting_bright.set_pos(0, setting_cont_y)
setting_bright.set_size(0, 0)
-setting_bright_label = lv.label(setting_bright)
+setting_bright_label = lv.label(setting_cont)
setting_bright_label.set_text("屏幕调节")
+setting_bright_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_bright_label.set_size(128-34, 35)
setting_bright.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_bright_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_bright_label.set_pos(34, setting_cont_y+5)
setting_bright_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_bright_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_bright.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_bright_img = lv.img(setting_cont)
-setting_bright_img.set_pos(0, setting_cont_y)
-setting_bright_img.set_size(232, 80)
+setting_bright_img.set_pos(4, setting_cont_y)
+setting_bright_img.set_size(set_icon_x, set_icon_y)
setting_bright_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_bright_img.set_src("U:/static/setting/menu_bright.png")
+setting_bright_img.set_src("U:/static/menu_bright.png")
setting_bright_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_volume = lv.btn(setting_cont)
setting_volume.set_pos(0, setting_cont_y)
setting_volume.set_size(0, 0)
-setting_volume_label = lv.label(setting_volume)
+setting_volume_label = lv.label(setting_cont)
setting_volume_label.set_text("铃声")
+setting_volume_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_volume_label.set_size(128-34, 35)
setting_volume.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_volume_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_volume_label.set_pos(34, setting_cont_y+5)
setting_volume_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_volume_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_volume.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_volume_img = lv.img(setting_cont)
-setting_volume_img.set_pos(0, setting_cont_y)
-setting_volume_img.set_size(232, 80)
+setting_volume_img.set_pos(4, setting_cont_y)
+setting_volume_img.set_size(set_icon_x, set_icon_y)
setting_volume_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_volume_img.set_src("U:/static/setting/menu_volume.png")
+setting_volume_img.set_src("U:/static/menu_volume.png")
setting_volume_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_restore = lv.btn(setting_cont)
setting_restore.set_pos(0, setting_cont_y)
setting_restore.set_size(0, 0)
-setting_restore_label = lv.label(setting_restore)
+setting_restore_label = lv.label(setting_cont)
setting_restore_label.set_text("恢复出厂设置")
+setting_restore_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_restore_label.set_size(128-34, 35)
setting_restore.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_restore_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_restore_label.set_pos(34, setting_cont_y+5)
setting_restore_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_restore_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_restore.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_restore_img = lv.img(setting_cont)
-setting_restore_img.set_pos(0, setting_cont_y)
-setting_restore_img.set_size(232, 80)
+setting_restore_img.set_pos(4, setting_cont_y)
+setting_restore_img.set_size(set_icon_x, set_icon_y)
setting_restore_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_restore_img.set_src("U:/static/setting/menu_restore.png")
+setting_restore_img.set_src("U:/static/menu_restore.png")
setting_restore_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_poweroff = lv.btn(setting_cont)
setting_poweroff.set_pos(0, setting_cont_y)
setting_poweroff.set_size(0, 0)
-setting_poweroff_label = lv.label(setting_poweroff)
+setting_poweroff_label = lv.label(setting_cont)
setting_poweroff_label.set_text("关机")
+setting_poweroff_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_poweroff_label.set_size(128-34, 35)
setting_poweroff.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_poweroff_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_poweroff_label.set_pos(34, setting_cont_y+5)
setting_poweroff_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_poweroff_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_poweroff.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_poweroff_img = lv.img(setting_cont)
-setting_poweroff_img.set_pos(0, setting_cont_y)
-setting_poweroff_img.set_size(232, 80)
+setting_poweroff_img.set_pos(4, setting_cont_y)
+setting_poweroff_img.set_size(set_icon_x, set_icon_y)
setting_poweroff_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_poweroff_img.set_src("U:/static/setting/menu_poweroff.png")
+setting_poweroff_img.set_src("U:/static/menu_poweroff.png")
setting_poweroff_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_version = lv.btn(setting_cont)
setting_version.set_pos(0, setting_cont_y)
setting_version.set_size(0, 0)
-setting_version_label = lv.label(setting_version)
+setting_version_label = lv.label(setting_cont)
setting_version_label.set_text("关于设备")
+setting_version_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_version_label.set_size(128-34, 35)
setting_version.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_version_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_version_label.set_pos(34, setting_cont_y+5)
setting_version_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_version_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_version.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_version_img = lv.img(setting_cont)
-setting_version_img.set_pos(0, setting_cont_y)
-setting_version_img.set_size(232, 80)
+setting_version_img.set_pos(4, setting_cont_y)
+setting_version_img.set_size(set_icon_x, set_icon_y)
setting_version_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_version_img.set_src("U:/static/setting/menu_version.png")
+setting_version_img.set_src("U:/static/menu_version.png")
setting_version_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
-setting_cont_y+=90
+setting_cont_y+=35
setting_update = lv.btn(setting_cont)
setting_update.set_pos(0, setting_cont_y)
setting_update.set_size(0, 0)
-setting_update_label = lv.label(setting_update)
+setting_update_label = lv.label(setting_cont)
setting_update_label.set_text("系统升级")
+setting_update_label.add_flag(lv.obj.FLAG.CLICKABLE)
+setting_update_label.set_size(128-34, 35)
setting_update.set_style_pad_all(0, lv.STATE.DEFAULT)
-setting_update_label.align(lv.ALIGN.LEFT_MID, 70, 0)
+setting_update_label.set_pos(34, setting_cont_y+5)
setting_update_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT)
setting_update_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_update.add_style(style_btn, lv.PART.MAIN | lv.STATE.DEFAULT)
setting_update_img = lv.img(setting_cont)
-setting_update_img.set_pos(0, setting_cont_y)
-setting_update_img.set_size(232, 80)
+setting_update_img.set_pos(4, setting_cont_y)
+setting_update_img.set_size(set_icon_x, set_icon_y)
setting_update_img.add_flag(lv.obj.FLAG.CLICKABLE)
-setting_update_img.set_src("U:/static/setting/menu_upgrade.png")
+setting_update_img.set_src("U:/static/menu_upgrade.png")
setting_update_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
class SettingScreen(Screen):
super().__init__()
self.meta = setting_screen
# setting_language.add_event_cb(lambda e: self.load_screen(e, {"screen": "language"}), lv.EVENT.CLICKED, None)
- setting_dialswitch.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "dialswitch"})), lv.EVENT.CLICKED, None)
+ setting_dialswitch_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "dialswitch"})), lv.EVENT.CLICKED, None)
# setting_themeswitch.add_event_cb(lambda e: self.load_screen(e, {"screen": "themeswitch"}), lv.EVENT.CLICKED, None)
- setting_imei.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "imei"})), lv.EVENT.CLICKED, None)
- setting_app.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "app"})), lv.EVENT.CLICKED, None)
- setting_bright.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "brightness"})), lv.EVENT.CLICKED, None)
- setting_volume.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "totalvolume"})), lv.EVENT.CLICKED, None)
- setting_restore.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "restore"})), lv.EVENT.CLICKED, None)
- setting_poweroff.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "poweroff"})), lv.EVENT.CLICKED, None)
- setting_update.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "update"})), lv.EVENT.CLICKED, None)
- setting_version.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "version"})), lv.EVENT.CLICKED, None)
+ setting_imei_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "imei"})), lv.EVENT.CLICKED, None)
+ setting_app_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "app"})), lv.EVENT.CLICKED, None)
+ setting_bright_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "brightness"})), lv.EVENT.CLICKED, None)
+ setting_volume_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "totalvolume"})), lv.EVENT.CLICKED, None)
+ setting_restore_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "restore"})), lv.EVENT.CLICKED, None)
+ setting_poweroff_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "poweroff"})), lv.EVENT.CLICKED, None)
+ setting_update_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "update"})), lv.EVENT.CLICKED, None)
+ setting_version_label.add_event_cb(lambda e: EventMesh.callback_wrapper(self.load_screen(e, {"screen": "version"})), lv.EVENT.CLICKED, None)
# img regist btton
# setting_language.add_event_cb(lambda e: self.load_screen(e, {"screen": "language"}), lv.EVENT.CLICKED, None)
app_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
app_img = lv.img(app_screen)
-app_img.set_pos(int(20),int(40))
-app_img.set_size(200,200)
+app_img.set_pos(int(24),int(5))
+app_img.set_size(80,80)
app_img.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
app_img.add_flag(lv.obj.FLAG.CLICKABLE)
app_img.set_src("U:/static/IMAGE_APP_QR_CODE.png")
# app_qr = lv.qrcode(imei, 150, fg_color, bg_color)
# app_qr.center()
# Add a border with bg_color
+
# app_qr.set_style_border_color(bg_color, 0)
# app_qr.set_style_border_width(5, 0)
# app_qr_data = str("https://fangzoudiu.xcloudtech.com/xiao_jian")
# app_qr.update(app_qr_data,len(app_qr_data))
app_label = lv.label(app_screen)
-app_label.set_pos(0, 280)
-app_label.set_size(240, 20)
+app_label.set_pos(0, 90)
+app_label.set_size(128, 38)
app_label.set_text(" ")
app_label.set_long_mode(lv.label.LONG.WRAP)
app_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
phonering_add_imgbtn = lv.img(phonering_screen)
phonering_add_imgbtn.set_pos(120, 150)
-phonering_add_imgbtn.set_size(110, 46)
+phonering_add_imgbtn.set_size(55, 23)
phonering_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
phonering_add_imgbtn.set_src("U:/static/add_btn.png")
alarmvolume_add_imgbtn = lv.img(alarmvolume_screen)
alarmvolume_add_imgbtn.set_pos(125, 150)
-alarmvolume_add_imgbtn.set_size(110, 46)
+alarmvolume_add_imgbtn.set_size(55, 23)
alarmvolume_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
alarmvolume_add_imgbtn.set_src("U:/static/add_btn.png")
msgvolume_add_imgbtn = lv.img(msgvolume_screen)
msgvolume_add_imgbtn.set_pos(125, 150)
-msgvolume_add_imgbtn.set_size(110, 46)
+msgvolume_add_imgbtn.set_size(55, 23)
msgvolume_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
msgvolume_add_imgbtn.set_src("U:/static/add_btn.png")
restore_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
restore_label = lv.label(restore_screen)
-restore_label.set_pos(0, 100)
-restore_label.set_size(240, 40)
+restore_label.set_pos(0, 20)
+restore_label.set_size(128, 20)
restore_label.set_text("恢复出厂设置?")
restore_label.set_long_mode(lv.label.LONG.WRAP)
restore_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
restore_confirm_label = lv.label(restore_screen)
restore_confirm_label.set_text("确认")
restore_confirm_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-restore_confirm_label.set_size(120, 60)
-restore_confirm_label.set_pos(0,180)
+restore_confirm_label.set_size(64, 20)
+restore_confirm_label.set_pos(0,60)
restore_confirm_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
restore_confirm = lv.label(restore_screen)
restore_confirm.set_text(" ")
-restore_confirm.set_size(120, 80)
-restore_confirm.set_pos(0,160)
+restore_confirm.set_size(64, 40)
+restore_confirm.set_pos(0,60)
restore_confirm.add_flag(lv.obj.FLAG.CLICKABLE)
restore_cancel_label = lv.label(restore_screen)
restore_cancel_label.set_text("返回")
-restore_cancel_label.set_size(120, 60)
+restore_cancel_label.set_size(64, 20)
restore_cancel_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-restore_cancel_label.set_pos(120,180)
+restore_cancel_label.set_pos(64,60)
restore_cancel_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
restore_cancel = lv.label(restore_screen)
restore_cancel.set_text(" ")
-restore_cancel.set_size(120, 80)
-restore_cancel.set_pos(120,160)
+restore_cancel.set_size(64, 40)
+restore_cancel.set_pos(64,60)
restore_cancel.add_flag(lv.obj.FLAG.CLICKABLE)
version_screen = lv.obj()
print("version_screen")
version_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
-
+version_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
version_msg = "Software Version:\n\
MMI\n\
Version:UIX8910_C55_V\n\
import versions
version_label1 = lv.label(version_screen)
-version_label1.set_pos(0, 30)
-version_label1.set_size(240, 30)
+version_label1.set_pos(0, 5)
+version_label1.set_size(128, 40)
version_label1.set_long_mode(lv.label.LONG.WRAP)
version_label1.set_text("Software Version:")
version_label1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label2 = lv.label(version_screen)
-version_label2.set_pos(0, 60)
-version_label2.set_size(240, 30)
+version_label2.set_pos(0, 45)
+version_label2.set_size(128, 20)
version_label2.set_long_mode(lv.label.LONG.WRAP)
version_label2.set_text("Python Lvgl")
version_label2.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label2.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label3 = lv.label(version_screen)
-version_label3.set_pos(0, 90)
-version_label3.set_size(240, 30)
+version_label3.set_pos(0, 65)
+version_label3.set_size(128, 20)
version_label3.set_long_mode(lv.label.LONG.WRAP)
version_label3.set_text("Version:")
version_label3.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label3.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label3 = lv.label(version_screen)
-version_label3.set_pos(0, 120)
-version_label3.set_size(240, 30)
+version_label3.set_pos(0, 90)
+version_label3.set_size(128, 20)
version_label3.set_long_mode(lv.label.LONG.WRAP)
version_label3.set_text(versions.Version)
version_label3.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
# version_label4.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label5 = lv.label(version_screen)
-version_label5.set_pos(0, 150)
-version_label5.set_size(240, 30)
+version_label5.set_pos(0, 115)
+version_label5.set_size(128, 20)
version_label5.set_long_mode(lv.label.LONG.WRAP)
version_label5.set_text("Build Time:")
version_label5.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label5.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label6 = lv.label(version_screen)
-version_label6.set_pos(0, 180)
-version_label6.set_size(240, 30)
+version_label6.set_pos(0, 140)
+version_label6.set_size(128, 40)
version_label6.set_long_mode(lv.label.LONG.WRAP)
version_label6.set_text(versions.Build_Time)
version_label6.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
# version_label7.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label8 = lv.label(version_screen)
-version_label8.set_pos(0, 210)
-version_label8.set_size(240, 30)
+version_label8.set_pos(0, 180)
+version_label8.set_size(128, 20)
version_label8.set_long_mode(lv.label.LONG.WRAP)
version_label8.set_text("IMEI:")
version_label8.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label8.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
version_label9 = lv.label(version_screen)
-version_label9.set_pos(20, 240)
-version_label9.set_size(220, 30)
-version_label9.set_long_mode(lv.label.LONG.WRAP)
+version_label9.set_pos(0, 200)
+version_label9.set_size(128, 38)
version_label9.set_text(" ")
version_label9.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
version_label9.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
update_title = lv.label(update_screen)
update_title.set_pos(0, 10)
-update_title.set_size(240, 40)
+update_title.set_size(128, 20)
update_title.set_text("系统更新")
update_title.set_long_mode(lv.label.LONG.WRAP)
update_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
update_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
update_label = lv.label(update_screen)
-update_label.set_text(" 已经是最新版本")
+update_label.set_text("已经是最新版本")
update_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-update_label.set_size(240, 50)
-update_label.set_pos(0,50)
+update_label.set_size(128, 20)
+update_label.set_pos(0,40)
update_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
update_return = lv.label(update_screen)
update_return.set_text("返回")
-update_return.set_size(240, 40)
+update_return.set_size(128, 40)
update_return.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-update_return.set_pos(0,240)
+update_return.set_pos(0,70)
update_return.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
update_return.add_flag(lv.obj.FLAG.CLICKABLE)
if ret == True:
ql_fs.rmdirs("/usr/static/storage_file")
ql_fs.mkdirs("/usr/static/storage_file")
- EventMesh.publish(constants.PROTOCOL.DLT_SEND)
+ if EventMesh.publish(constants.EVENT.GET_CONNECT) == 1:#已连接服务器发指令恢复出厂
+ EventMesh.publish(constants.PROTOCOL.DLT_SEND)
+ else:
+ Power.powerRestart()
def concel(self, e):
EventMesh.publish("load_screen", {"screen": "setting"})
self.btn_count = 0
def initialization(self):
imei = EventMesh.publish(constants.EVENT.GET_IMEI)
- version_label9.set_text(imei)
+ print("imei",imei)
+ version_label9.set_text("{}".format(imei))
def Close(self):
self.btn_count = 0
poweroff_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
poweroff_img = lv.img(poweroff_screen)
-poweroff_img.set_pos(100, 30)
-poweroff_img.set_size(61, 61)
+poweroff_img.set_pos(49, 5)
+poweroff_img.set_size(30, 30)
poweroff_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
poweroff_img.set_src("U:/static/poweroff_icon.png")
poweroff_label = lv.label(poweroff_screen)
poweroff_label.set_text("是否关机?")
poweroff_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-poweroff_label.set_size(240, 20)
-poweroff_label.set_pos(0,120)
+poweroff_label.set_size(128, 20)
+poweroff_label.set_pos(0,40)
poweroff_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
poweroff_confirm_img = lv.img(poweroff_screen)
-poweroff_confirm_img.set_size(176, 46)
-poweroff_confirm_img.set_pos(32, 150)
+poweroff_confirm_img.set_size(88, 23)
+poweroff_confirm_img.set_pos(24, 65)
poweroff_confirm_img.set_src("U:/static/off_icon.png")
-poweroff_confirm_img.add_flag(lv.obj.FLAG.CLICKABLE)
poweroff_confirm_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+poweroff_confirm_imgbtn = lv.img(poweroff_screen)
+poweroff_confirm_imgbtn.set_size(128, 35)
+poweroff_confirm_imgbtn.set_pos(0, 60)
+poweroff_confirm_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
+poweroff_confirm_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+
poweroff_confirm_label = lv.label(poweroff_confirm_img)
poweroff_confirm_label.set_text("关机")
-poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 5)
+poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 0)
poweroff_confirm_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
poweroff_return = lv.img(poweroff_screen)
-poweroff_return.set_size(176, 46)
-poweroff_return.set_pos(32, 210)
+poweroff_return.set_size(88, 23)
+poweroff_return.set_pos(24, 100)
poweroff_return.set_src("U:/static/cancel_icon.png")
-poweroff_return.add_flag(lv.obj.FLAG.CLICKABLE)
poweroff_return.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
+poweroff_return_btn = lv.img(poweroff_screen)
+poweroff_return_btn.set_size(128, 33)
+poweroff_return_btn.set_pos(0, 95)
+poweroff_return_btn.add_flag(lv.obj.FLAG.CLICKABLE)
+poweroff_return_btn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
+
poweroff_return_label = lv.label(poweroff_return)
poweroff_return_label.set_text("返回")
-poweroff_return_label.align(lv.ALIGN.CENTER, 0, 5)
+poweroff_return_label.align(lv.ALIGN.CENTER, 0, 0)
poweroff_return_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
poweroff_return.set_ext_click_area(20)
def __init__(self):
super().__init__()
self.meta = poweroff_screen
- poweroff_confirm_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.CLICKED, None)
- poweroff_return.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.CLICKED, None)
+ poweroff_confirm_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.CLICKED, None)
+ poweroff_return_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.CLICKED, None)
def initialization(self):
pass
EventMesh.publish("load_screen", {"screen": "setting"})
def confirm(self, e):
- EventMesh.publish("load_screen", {"screen": "poweroff_comfirm"})
-
+ # EventMesh.publish("load_screen", {"screen": "poweroff_comfirm"})
+ EventMesh.publish("load_screen", {"screen": "no_sim_power_screen"})
def concel(self, e):
EventMesh.publish("load_screen", {"screen": "setting"})
poweroff_confirm_label = lv.label(poweroff_confirm_screen)
poweroff_confirm_label.set_text("Goodbye")
poweroff_confirm_label.align(lv.ALIGN.CENTER, 0, 0)
-#poweroff_confirm_label.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
+poweroff_confirm_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
import utime
class PoweroffConfirmScreen(Screen):
#print("self.read_data:{}".format(self.read_data))
with open("/usr/static/storage_file/config.json","w",encoding="utf-8") as fd:
ujson.dump(self.read_data,fd)
- self.timer.start(3*1000,0,self.power_off)
+ self.count = 0
+ self.timer.start(1*1000,1,self.power_off)
def power_off(self,*args):
-
- Power.powerDown()
+ self.count+=1
+ EventMesh.publish("system_sleep_rest")#防止黑屏
+ # print("power off!!!!!!!",self.count)
+ if self.count > 5:#在上一个界面在播放音频时切换界面则关闭 以免一直播放
+ self.count = 0
+ self.timer.stop()
+ Power.powerDown()
def done_return(self):
pass
bg_color = lv.palette_lighten(lv.PALETTE.LIGHT_BLUE, 5)
fg_color = lv.palette_darken(lv.PALETTE.BLUE, 4)
-imei_qr = lv.qrcode(imei_screen, 150, fg_color, bg_color)
-imei_qr.center()
+imei_qr = lv.qrcode(imei_screen, 80, fg_color, bg_color)
+imei_qr.set_pos(24, 4)
# Add a border with bg_color
imei_qr.set_style_border_color(bg_color, 0)
-imei_qr.set_style_border_width(5, 0)
+imei_qr.set_style_border_width(2, 0)
imei_label = lv.label(imei_screen)
-imei_label.set_pos(0, 280)
-imei_label.set_size(240, 20)
+imei_label.set_pos(0, 90)
+imei_label.set_size(128, 38)
imei_label.set_text(" ")
imei_label.set_long_mode(lv.label.LONG.WRAP)
imei_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
brightness_title = lv.label(brightness_screen)
-brightness_title.set_pos(0, 10)
-brightness_title.set_size(240, 40)
+brightness_title.set_pos(0, 5)
+brightness_title.set_size(120, 20)
brightness_title.set_text("屏幕调节")
brightness_title.set_long_mode(lv.label.LONG.WRAP)
brightness_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
brightness_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_label1 = lv.label(brightness_screen)
-brightness_label1.set_pos(10, 70)
-brightness_label1.set_size(230, 40)
+brightness_label1.set_pos(5, 30)
+brightness_label1.set_size(128-5, 20)
brightness_label1.set_text("亮度:")
brightness_label1.set_long_mode(lv.label.LONG.WRAP)
brightness_label1.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
brightness_label1.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_bar = lv.bar(brightness_screen)
-brightness_bar.set_pos(20, 100)
-brightness_bar.set_size(200, 25)
+brightness_bar.set_pos(10, 55)
+brightness_bar.set_size(108, 12)
brightness_bar.set_style_anim_time(1000, lv.PART.INDICATOR | lv.STATE.DEFAULT)
brightness_bar.set_mode(lv.bar.MODE.NORMAL)
brightness_bar.set_value(50, lv.ANIM.OFF)
brightness_bar.add_style(style_bar_indic, lv.PART.INDICATOR | lv.STATE.DEFAULT)
brightness_reduce_imgbtn = lv.img(brightness_screen)
-brightness_reduce_imgbtn.set_pos(5, 195)
-brightness_reduce_imgbtn.set_size(110, 46)
+brightness_reduce_imgbtn.set_pos(6, 70)
+brightness_reduce_imgbtn.set_size(55, 23)
brightness_reduce_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
brightness_reduce_imgbtn.set_src("U:/static/reduce_btn.png")
brightness_reduce_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_add_imgbtn = lv.img(brightness_screen)
-brightness_add_imgbtn.set_pos(125, 195)
-brightness_add_imgbtn.set_size(110, 46)
+brightness_add_imgbtn.set_pos(67, 70)
+brightness_add_imgbtn.set_size(55, 23)
brightness_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
brightness_add_imgbtn.set_src("U:/static/add_btn.png")
brightness_add_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_label_time = lv.label(brightness_screen)
-brightness_label_time.set_pos(10, 150)
-brightness_label_time.set_size(80, 30)
+brightness_label_time.set_pos(5, 97)
+brightness_label_time.set_size(45, 20)
brightness_label_time.set_text("时间:")
brightness_label_time.set_long_mode(lv.label.LONG.WRAP)
brightness_label_time.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
brightness_label_time.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_time_reduce_img = lv.img(brightness_screen)
-brightness_time_reduce_img.set_pos(90, 145)
-brightness_time_reduce_img.set_size(30, 34)
+brightness_time_reduce_img.set_pos(50, 97)
+brightness_time_reduce_img.set_size(15, 17)
brightness_time_reduce_img.set_src("U:/static/time_up2.png")
brightness_time_reduce_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_time_reduce_imgbtn= lv.img(brightness_screen)
-brightness_time_reduce_imgbtn.set_size(80, 45)
-brightness_time_reduce_imgbtn.set_pos(90, 140)
+brightness_time_reduce_imgbtn.set_size(49, 32)
+brightness_time_reduce_imgbtn.set_pos(79, 96)
brightness_time_reduce_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
brightness_label_time_text = lv.label(brightness_screen)
-brightness_label_time_text.set_pos(130, 152)
-brightness_label_time_text.set_size(60, 30)
-brightness_label_time_text.set_text("5秒")
+brightness_label_time_text.set_pos(65, 98)
+brightness_label_time_text.set_size(45, 20)
+brightness_label_time_text.set_text("5s")
brightness_label_time_text.set_long_mode(lv.label.LONG.WRAP)
-brightness_label_time_text.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+brightness_label_time_text.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
brightness_label_time_text.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_time_add_img = lv.img(brightness_screen)
-brightness_time_add_img.set_pos(190, 145)
-brightness_time_add_img.set_size(30, 34)
+brightness_time_add_img.set_pos(110, 97)
+brightness_time_add_img.set_size(15, 17)
brightness_time_add_img.set_src("U:/static/time_up1.png")
brightness_time_add_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
brightness_time_add_imgbtn= lv.img(brightness_screen)
-brightness_time_add_imgbtn.set_size(70, 45)
-brightness_time_add_imgbtn.set_pos(170, 140)
+brightness_time_add_imgbtn.set_size(49, 32)
+brightness_time_add_imgbtn.set_pos(30, 96)
brightness_time_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
def __init__(self):
super().__init__()
- self.level = 6
+ self.level = 60
self.time = 10
self.read_data = {}
self.meta = brightness_screen
brightness_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_level(e)),
lv.EVENT.CLICKED, None)
- brightness_time_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_time_level(e)),
+ brightness_time_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_time_level(e)),
lv.EVENT.CLICKED, None)
- brightness_time_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_time_level(e)),
+ brightness_time_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_time_level(e)),
lv.EVENT.CLICKED, None)
def initialization(self):
self.level = EventMesh.publish("get_brightness_level")
def add_level(self, e):
EventMesh.publish("push_add_brightness_level")
self.level = EventMesh.publish("get_brightness_level")
- print("self.level:{}".format(self.level))
+ # print("self.level:{}".format(self.level))
self.show_bar()
def reduce_level(self, e):
def show_bar(self):
if self.level == None:
- self.level = 6
- brightness_bar.set_value((100 // 10) * self.level, lv.ANIM.OFF)
+ self.level = 60
+ brightness_bar.set_value((100 // 100) * self.level, lv.ANIM.OFF)
volume_adjust_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
totalvolume_title = lv.label(volume_adjust_screen)
-totalvolume_title.set_pos(0, 10)
-totalvolume_title.set_size(240, 40)
+totalvolume_title.set_pos(0, 5)
+totalvolume_title.set_size(128, 20)
totalvolume_title.set_text("铃声调节")
totalvolume_title.set_long_mode(lv.label.LONG.WRAP)
totalvolume_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
totalvolume_title.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
totalvolume_label1 = lv.label(volume_adjust_screen)
-totalvolume_label1.set_pos(10, 70)
-totalvolume_label1.set_size(230, 40)
+totalvolume_label1.set_pos(5, 30)
+totalvolume_label1.set_size(128-5, 20)
totalvolume_label1.set_text("铃声:")
totalvolume_label1.set_long_mode(lv.label.LONG.WRAP)
totalvolume_label1.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
totalvolume_label1.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
totalvolume_bar = lv.bar(volume_adjust_screen)
-totalvolume_bar.set_pos(20, 100)
-totalvolume_bar.set_size(200, 25)
+totalvolume_bar.set_pos(10, 55)
+totalvolume_bar.set_size(108, 12)
totalvolume_bar.set_style_anim_time(1000, lv.PART.INDICATOR | lv.STATE.DEFAULT)
totalvolume_bar.set_mode(lv.bar.MODE.NORMAL)
totalvolume_bar.set_value(50, lv.ANIM.OFF)
totalvolume_bar.add_style(style_bar_indic, lv.PART.INDICATOR | lv.STATE.DEFAULT)
totalvolume_reduce_imgbtn = lv.img(volume_adjust_screen)
-totalvolume_reduce_imgbtn.set_pos(5, 145)
-totalvolume_reduce_imgbtn.set_size(110, 46)
+totalvolume_reduce_imgbtn.set_pos(6, 70)
+totalvolume_reduce_imgbtn.set_size(55, 23)
totalvolume_reduce_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
totalvolume_reduce_imgbtn.set_src("U:/static/reduce_btn.png")
totalvolume_reduce_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
totalvolume_add_imgbtn = lv.img(volume_adjust_screen)
-totalvolume_add_imgbtn.set_pos(125, 145)
-totalvolume_add_imgbtn.set_size(110, 46)
+totalvolume_add_imgbtn.set_pos(67, 70)
+totalvolume_add_imgbtn.set_size(55, 23)
totalvolume_add_imgbtn.add_flag(lv.obj.FLAG.CLICKABLE)
totalvolume_add_imgbtn.set_src("U:/static/add_btn.png")
totalvolume_add_imgbtn.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT)
# print("self.read_data:size :{}".format(self.read_data))
with open("/usr/static/storage_file/config.json","w",encoding="utf-8") as fd:
ujson.dump(self.read_data,fd)
- self.aud.play(1, 1, 'U:/static/audio_audio_haixiu.mp3') #播放声音
+ self.aud.play(1, 1, 'U:/static/R_VOLUME_SET_1.mp3') #播放声音
def Close(self):
self.aud.stop()