--[[ @module tsb_waveform_page @summary 简易示波器页面 @version 1.0 @date 2026.03.17 @author 李一玮 @usage 本文件是简易示波器页面,展示232日志的各种用法。 ]] local tsb_waveform_page = {} -- 页面UI元素 local main_container = nil local common_ui = require("tsb_common_page") -- 创建UI function tsb_waveform_page.create_ui() main_container = airui.container({ x = 0, y = 0, w = 480, h = 320, color = 0xF5F5F5, }) --------------------- 标题栏 ------------------------ local title_bar = airui.container({ parent = main_container, x = 0, y = 0, w = 480, h = 30, color = 0xFFAB91, }) airui.label({ parent = title_bar, text = "简易示波器", x = 190, y = 8, w = 200, h = 20, font_size = 16, color = 0xFFFFFF, }) -- 标题栏公共信息展示 common_ui.add_battery_display(title_bar) common_ui.create_back_button(title_bar, tsb_waveform_page.cleanup) -- 滚动容器 local scroll_container = airui.container({ parent = main_container, x = 0, y = 30, w = 480, h = 270, color = 0xFFFFFF, }) -- 创建两个容器卡片 local card_width = 140 local card_height = 80 local padding = 20 local y_offset = 20 -- 示波器输入卡片 local input_card = airui.container({ parent = scroll_container, x = padding, y = y_offset, w = card_width, h = card_height, color = 0xFFD93D, radius = 8, }) -- 示波器输入标题 airui.label({ parent = input_card, text = "波形输入", x = 10, y = 10, w = card_width - 20, h = 30, font_size = 16, color = 0x000000, }) -- 点击事件 input_card:set_on_click(function() log.info("waveform_page", "点击示波器输入卡片") _G.show_page("tsb_wavein_page") end) -- 示波器输出卡片 local output_card = airui.container({ parent = scroll_container, x = padding * 2 + card_width, y = y_offset, w = card_width, h = card_height, color = 0x72DDF7, radius = 8, }) -- 示波器输出标题 airui.label({ parent = output_card, text = "波形输出", x = 10, y = 10, w = card_width - 20, h = 30, font_size = 16, color = 0x000000, }) -- 点击事件 output_card:set_on_click(function() log.info("waveform_page", "点击示波器输出卡片") _G.show_page("tsb_waveout_page") end) -- 底部信息 common_ui.create_status_bar(main_container) end -- 初始化页面 function tsb_waveform_page.init(params) tsb_waveform_page.create_ui() end -- 清理页面 function tsb_waveform_page.cleanup() if main_container then main_container:destroy() main_container = nil end end return tsb_waveform_page