LVGL移植win端模拟显示流畅解决方案-使用 SquareLine 生成前端 UI 文件

lvgl_port_win_vscode

在 win 平台对 lvgl 方便的进行模拟显示,程序文件结构清晰,lvgl with SDL2,cmake 构建,VsCode 一键运行,使用 SquareLine 生成前端 UI 文件,win 上直接跑。

相比官方的 lvgl 移植到 win 端的几种方法 Simulator on PC — LVGL documentation,本仓库带来更好的 lvgl 在 win 端的模拟显示 体验!

使用 SquareLine 生成前端 UI 文件,win 上直接跑。

仓库约 260MB 大小。

全部使用 手写的 cmake 构建,具有 学习 和 实践使用 意义。

使用说明

环境

首先,需要 pc 安装有 mingw-w64 和 cmake,以及 VsCode(带 C/C++C/C++ Extension PackCMake 等相关常用插件)。

我的一个 VsCode 跑一跑 C/C++ 程序的工程模板:见 VsCode temp Proj(github.com) 或 VsCode temp Proj(gitee.com。

使用

github 仓库 https://github.com/Staok/lvgl_port_win_vscode。

gitee 仓库 https://gitee.com/staok/lvgl_port_win_vscode。

三个文件夹,为三个独立工程,分别可独立 编译 & 运行;每个文件夹里面都有说明,要看。

  • 1-SDL2_lib_test_show,这是 测试运行 SDL2 库(win 端的创建窗口应用的库)的,装 SDL2 库、编译 和 运行 看 CMakeList 文件里面。

  • 2-lvgl_sim_vscode_sdl_win_show,这是在官方 VSCode with SDL driver 上的魔改,借鉴了一些网友的构建和例子,程序里均给出了参考链接。

  • lvgl_squareLine_proj_temp,作为通用的 lvgl 工程模板。这是 集合官方最新 lvgl 库、lv_drivers 库、SDL2、SquareLine 生成的前端 UI 文件 的工程,以及添加了一些功能,cmake 构建,添加了 VsCode 的 task,一键 F5 运行。SquareLine 是 可视化的 lvgl 界面设置 软件,其直接生成 lvgl 可以运行的 界面代码。

lvgl_squareLine_proj_temp 目前还只支持在 win 端运行。

lvgl_squareLine_proj_temp 作为通用的 lvgl 工程模板,目标是 一个文件夹, win 端 和 嵌入式linux 端 或 mcu 端(经过交叉编译)均可以跑,即 pc 上 模拟显示 & 反复调整,下载到 嵌入式 linux 板子 或 mcu 板子 就跑。并且 UI 的前后端分离。做到通用化的一个 lvgl 小模板、小框架。

效果

一键 F5 —— 启动!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/84465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 集合(Set)快速指南 | Navicat

Redis 支持通过多种数据类型来存储项目集合。其中,包括列表、集合和哈希。上周的博文介绍了列表(List)数据类型并重点介绍了一些用于管理列表(List)的主要命令。在今天的文章中,我们将转向关注集合&#xf…

【MySQL基础】--- 约束

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【MySQL学习专栏】🎈 本专栏旨在分享学习MySQL的一点学习心得,欢迎大家在评论区讨论💌 目录 一、什么…

Python 打印文本进度条

""" 打印文本进度条知识点:1、字符串运算,注意只能适用于加法、乘法,例如:123 123 123123例如:123 * 3 1231231232、循环语句while、for3、条件语句if4、重点:转义字符\r,可以…

【springMvc】自定义注解的使用方式

🎬 艳艳耶✌️:个人主页 🔥 个人专栏 :《Spring与Mybatis集成整合》 ⛺️ 生活的理想,为了不断更新自己 ! 1.前言 1.1.什么是注解 Annontation是Java5开始引入的新特征,中文名称叫注解。 它提供了一种安全…

Unity中UI组件对Shader调色

文章目录 前言一、原理在Shader中直接暴露的Color属性,不会与UI的Image组件中的Color形成属性绑定。因为UI的Image组件中更改的颜色是顶点颜色,如果需要在修改组件中的颜色时,使Shader中的颜色也同时改变。那么就需要在应用程序阶段传入到顶点…

数据结构和算法(8):搜索树(二叉搜索树和AVL树)

查找 所谓的查找或搜索,指从一组数据对象中找出符合特定条件者,这是构建算法的一种基本而重要的操作。其中的数据对象,统一地表示和实现为 词条(entry) 的形式;不同词条之间,依照各自的 关键码…

Python:使用PySimpleGUI中sg.Input控件获取数据plot导致yticks错乱

sg.Input获取y轴数据代码 sg.Text(First Read:, font("Times New Roman", 9)),sg.Input(key-first_read-, size(25, 1), default_text0,0,0, justificationcenter, font("Times New Roman", 9), expand_xTrue), sg.Text(Second Read:, font("Times Ne…

Vue Grid Layout -️ 适用Vue.js的栅格布局系统,在vue3+上使用

文章目录 1、官网简介2、在vue3中使用1)、需要导入vue3支持的版本插件2)、在mian.js里引入:3)、在组件中使用 3、layout布局的计算逻辑4、 gridLayout 的属性 该栅格系统目前对 vue2 的支持是最好的,vue3 是需要用插件支持的,会在小节详细讲解…

求二维子数组的和(剖析)

文章目录 🐒个人主页🏅JavaSE系列专栏📖前言:本篇剖析一下二维子数组求和规则: 🐒个人主页 🏅JavaSE系列专栏 📖前言:本篇剖析一下二维子数组求和 规则: 这…

PyTorch C++ 前端:张量

本篇文章将尝试了解 PyTorch 组件的高级概述以及它们如何配合。 PyTorch 组件的高级概述 后端 PyTorch 后端是用 C++ 编写的,它提供 API 来访问高度优化的库,例如:用于高效矩阵运算的张量库、用于执行 GPU 运算的 CUDA 库以及用于梯度计算的自动微分等。 前端 可以使用…

蓝牙核心规范(V5.4)10.2-BLE 入门笔记之CIS篇

LE CIS 同步通信 同步通信提供了一种使用蓝牙LE在设备之间传输有时间限制的数据的方式。它提供了一个机制,允许多个接收器设备在不同的时间从相同的源接收数据,以同步它们对该数据的处理。LE AUDIO使用同步通信。 当使用同步通信时,数据具有有限的时间有效期,在到期时被认…

【强化学习】01—— 强化学习简介

文章目录 两种机器学习类型强化学习定义强化学习交互过程强化学习系统要素历史(History)状态(State)策略(Policy)奖励(Reward)价值函数(Value Function)模型(Model)迷宫例子 强化学习智能体分类参考 两种机器学习类型 监督学习/无监督学习/强化学习/机器学习之间的关系 预测 根…

坚鹏:浙江农商联合银行同业核心产品解读与差异化分析培训第7期

浙江农商联合银行同业核心产品解读与差异化分析培训第7期 1952年,浙江第一家农村信用社成立。2004年4月18日,浙江省农信联社成立,承担对全省农信社的管理、指导、协调和服务职能。2021年10月,经国务院批准同意、银保监会批复&…

虚拟DOM与diff算法

虚拟DOM与diff算法 snabbdom虚拟DOMdiff算法 snabbdom 是什么:snabbdom是著名的虚拟DOM库,是diff算法的鼻祖,Vue源码借鉴了snabbdom 虚拟DOM 是什么:本质上是存在内存里的 JavaScript 对象 作用:用来描述真实DOM的层…

Android毕业设计,基于Android 语音朗读书籍管理系统

视频演示: 基于Android 语音朗读书籍管理系统 基于 Android 的语音朗读书籍管理系统可以提供用户管理书籍、朗读书籍的功能。以下是一个简单的步骤和功能列表: 用户注册和登录功能: 用户可以注册新账号或使用现有账号登录系统。用户信息可以包…

php宝塔搭建实战Cloud网盘网站php源码

注意:因为微信最近又改了推送机制,经常有朋友说错过了之前的搭建教程文章,每次都要主动搜索才能搜到公众号。所以建议大家加个星标,就能第一时间收到推送。 大家好啊,欢迎来到web测评。本期给大家带来一套php开发的Clo…

Flutter flutter.minSdkVersion的实际文件位置

Flutter 项目的Android相关版本号配置: flutter.minSdkVersion 的版本号配置文件实际路径: …/flutter_sdk/packages/flutter_tools/gradle/src/main/groovy/flutter.groovy Flutter版本号如下: bzbMacBook-Pro ccsmec % flutter --version …

不要动 WindowsApps 文件夹的权限以及更新 win10 版本

前言: 先简单说几句,本来打算开始写论文的,装个 mathtype 到 word 中,word 的安装路径在 WindowsApps 文件夹中,修改权限后导致 wsl 不能使用、微软自带的软件报错(参数错误)以及微软商店不能使…

C语言中的虚拟地址

虚拟地址 虚拟地址空间 对于操作系统而言,每个进程所得到的虚拟地址都在一个独立的固定的范围内,不会超过这个范围,我们把这个范围称为虚拟地址空间。所谓的虚拟地址空间本质就是一个地址范围,表示程序的寻址能力。对于32位系统…

直播视频处理过程

视频其实就是快速播放一连串连续的图片。 每一张图片,我们称为一帧。只要每秒钟帧的数据足够多,也即播放得足够快。比如每秒 30 帧,以人的眼睛的敏感程度,是看不出这是一张张独立的图片的,这就是我们常说的帧率&#…