项目简介
这是一个基于C++的静态GUI库,主要用于在固定宽度的字符显示设备(如LCD显示屏)上创建和管理菜单界面。该库可简化微控制器等嵌入式系统上用户界面的开发过程,避免硬编码带来的复杂性。
项目的主要特性和功能
- 静态分配:所有资源静态分配,避免动态内存分配,适用于资源受限的嵌入式系统。
- 声明式编程:以声明式风格定义菜单和页面,提升代码可读性与可维护性。
- 常量表达式支持:尽可能使用
constexpr
,提高编译时计算效率。 - 可定制行为:支持通过继承或适配器模式定制菜单项行为,无需改变继承结构。
- 跨平台适应性:易于适应不同的微控制器和环境。
- 可视化工具:提供基于Qt的菜单可视化工具,便于在桌面环境中预览和调试菜单。
- 命令行测试工具:可在无硬件的情况下测试菜单逻辑。
安装使用步骤
假设用户已经下载了本项目的源码文件。
1. 复制项目:
sh
cd pelectron_static_gui_library
2. 安装依赖:
- 安装C++17兼容的编译器。
- 安装依赖库。
3. 编译库:
- 使用meson构建系统:
sh
meson setup build
meson compile -C build
- 或者手动编译:
- 将include
目录添加到编译器的包含路径中。
- 编译示例代码:
sh
g++ -std=c++17 -Iinclude examples/menu_tester.cpp -o menu_tester
4. 使用库:
- 在你的C++项目中包含sgl.hpp
头文件。
- 使用库提供的API定义菜单、页面和菜单项。
5. 运行示例:
- 运行命令行测试工具:
sh
./menu_tester
- 运行Qt可视化工具(需安装Qt):
sh
meson setup build -Dgui=true
meson compile -C build
./build/visualizer
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】