2 Star 1 Fork 1.2K

ghb / GuiLite

forked from idea4good / GuiLite 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README_zh.md 7.58 KB
一键复制 编辑 原始数据 按行查看 历史
idea4good 提交于 2019-07-29 18:28 . update doc for 3D tutorial

Image

GuiLite(超轻量UI框架) - 最小的GUI库

badge_build badge_docker badge_platform badge_lincense badge_lincense


GuiLite是什么鬼?

  • GuiLite是5千行代码的全平台UI框架,可以完美运行在: iOS,Android,Linux(ARM/x86-64),Windows(包含VR),Mac,Docker和有(无)操作系统的MCU上。
  • GuiLite可以嵌入在iOS、Android、MFC、QT等其他UI系统中,让你的界面集百家之长,又不失个性。
  • GuiLite与操作系统及第三方图形库无关,甚至也可以运行在无OS的单片机环境。
  • GuiLite鼓励混合编程,开发者可以用GuiLite接管UI部分,用Swift,Java,Golang,C#,Python开发业务部分。
  • 🔧不鼓励大家全盘接受GuiLite,更愿意大家自主定制GuiLite
  • ⚙️希望GuiLite小到足够帮助大家掌握UI工作原理,从而摆脱UI框架的束缚,构建自己独一无二的UI
  • 👑任何UI框架都不为你我而生,你才是自己真正的主人

🔥新功能:3D教程

GuiLiteGraphic

功能介绍

卓越的跨平台能力

ARM Linux STM32 Without OS
ARM Linux MCU MCU
Windows Mixed Reality Android
Win MR Android
macOS iOS
macOS iOS

GuiLite Previewer(所见即所得的GuiLite开发插件)

GuiLite Previewer是一个Visual Studio Code插件,它可以自动提取源代码的GUI布局信息,并实时显示在“预览”页面上(所见即所得) GuiLitePreviewer


支持Docker容器

我们把GuiLite demo做成了Docker映像,只需一行命令,就可以将最新的GuiLite demo升级/部署/运行在你的设备上了。

  • sudo docker run -it --privileged -v /dev:/dev-share idea4good/gui-lite:latest bash /run.sh

易于定制界面

wallpaper


万国语(unicode):

unicode


“换肤”功能

multi-theme


IoT(物联网)功能

  • 上报“编译/运行”情况至“云端”:
    BuildInfo
  • 同步“运行数据”至“云端”:
    DataOnCloud

快速上手

GuiLite只是一个框架,本身并不能生成UI。为了能够展示如何用GuiLite开发App,我们提供了一些实例程序给大家参考。

  • 实例程序的代码在这里
  • 实例程序的功能说明:
实例名称 支持的平台 功能简介 编译方法 难度
HelloParticle Windows, Linux, STM32F103, STM32F429 粒子效果的应用 编译/运行
HelloStar Windows, Linux, STM32F103, STM32F429 星空效果的应用 编译/运行
Hello3D Windows, Linux, STM32F103 3D物理过程的应用 Build ★★
HelloGuiLite Windows, Linux 初始化GuiLite,加载资源,布局界面元素,按钮响应 编译/运行 ★★
HelloWidgets Windows, Linux 用于演示基本控件的使用方法 编译/运行 ★★
HelloMario Windows, Linux, STM32F103, STM32F429 多图层的UI系统 编译/运行 ★★
HelloNoTouch Windows, Linux, STM32F103, STM32F429 用于非触摸屏场景,通过硬按键进行UI“导航” 编译/运行 ★★
HelloFont Windows, Linux 显示多种语言(不限:中、英文) 编译/运行 ★★
HelloAnimation Windows, Linux 动画的应用 编译/运行 ★★
HelloSlide Windows, Linux 滑屏界面的应用 编译/运行 ★★★
HelloWave Windows, Linux, STM32F103, STM32F429 波形控件的应用,及单片机移植办法 编译/运行 ★★★
HostMonitor iOS, Mac, Android, Windows, Linux 创建复杂界面,扩展自定义控件,适配全平台 编译/运行 ★★★★

开发文档

GuiLite是最简单,易学的GUI库。

  1. 只有5千行C++代码
  2. 只使用C++的基本特性(类和虚函数),不涉及复杂语法
  3. 图形绘制以描点为基础,不使用任何算法
  4. 设计简单,配有丰富的文档和实例程序;遇到问题,可以在QQ群获得帮助

学习方法

  1. 外围 - 成功编译GuiLite库
  2. 前戏 - 成功运行HelloXXX实例程序
  3. 交流 - 研读/修改100+行的HelloXXX/UIcode/UIcode.cpp源代码
  4. 深交 - 研读gui目录下的代码
  5. 攻核 - 研读core目录下的代码
  6. 分家 - 丰富,扩展自己的UI功能

视频链接:

镜像代码仓库

GitHub链接

致谢和慈善

  • 感谢开发者群的所有同学,是你们塑造了今天的GuiLite!也欢迎新的大神/小白加入我们。
  • 赞助 & 救助大病儿童
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/hb/GuiLite.git
git@gitee.com:hb/GuiLite.git
hb
GuiLite
GuiLite
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891