从LVGL标签读取数据转为变量

bash 复制代码
label 显示的文本格式是 %.4fmm,例如 12.3456mm。
目标是从文本中提取出 12.3456 并转为 double 类型。
c 复制代码
		lv_label_set_text(guider_ui.screen_1_label_1, position_mm_buffer);
		就可以更新了
		lv_obj_invalidate(guider_ui.screen_1_label_1);更新后重绘

		char View_VUE[32]; //更新显示
		snprintf(View_VUE, sizeof(View_VUE), "%.4fmm", circleVUE_Min_extreme);
		if (lv_scr_act() == guider_ui.screen_1)
		{ // 检查当前活动屏幕是否为屏幕1
		if (lv_obj_is_valid(guider_ui.screen_1_label_6)) 
		{
		lv_label_set_text(guider_ui.screen_1_label_6, View_VUE);
			lv_obj_invalidate(guider_ui.screen_1_label_6);
		}
		}		
c 复制代码
// 获取 label 文本
const char *text = lv_label_get_text(guider_ui.screen_1_label_6);

// 提取数值部分(去掉 单位"mm")
char value_str[32];
sscanf(text, "%[^m]", value_str);

// 转为 double
double value = atof(value_str);

确保 label 文本格式固定:如果格式变化(例如单位位置不同),需要调整字符串处理逻辑。

错误处理:如果 label 文本为空或格式错误,atof() 会返回 0,需要额外检查。

内存安全:value_str 长度要足够容纳数值字符串,避免溢出。

相关推荐
FreeTinker3 小时前
HTML本地存储技术解析:localStorage与sessionStorage的原理、差异与应用场景
前端·html
qq_452396233 小时前
第十二篇:《全链路监控与可观测性:前端错误追踪与性能分析》
前端
海兰4 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
wangruofeng4 小时前
Phosphor Icons 官网源码拆解:URL 即存储、水波动画与 7362 Star 图标库的架构实践
前端·架构·github
BigTopOne5 小时前
WebRTC Native / Android 开发学习资源整理
前端
excel6 小时前
nuxt 3 升级 nuxt 4 报错之 hasInjectionContext
前端
小磊哥er6 小时前
深入解构Claude Code - 第 7 篇 · 连接外面的世界
javascript·ai编程
何以解忧,唯有..6 小时前
LangChain 工具调用(Tool Calling)实战指南
java·前端·langchain
小磊哥er6 小时前
深入解构Claude Code - 第 6 篇 · 终端里的图形界面
javascript·ai编程
海兰6 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(一)
javascript·python·金融