树莓派4B:1gRAM安装Python GUI库Kivy教程

简介: 树莓派4B:1gRAM安装Python GUI库Kivy教程

第零步,什么是Kivy


来自官方——用于快速开发应用程序的开源Python库,程序可调用创新的用户接口(例如多点触控应用)。


其特点是:


  • 跨平台:Kivy可在Linux,Windows,OS X,Android,iOS和Raspberry Pi上运行,可以在所有支持的平台上运行相同的代码。它可以本地使用大多数输入、协议和设备,包括WM_Touch,WM_Pen,Mac OS X Trackpad和Magic Mouse,Mtdev,Linux Kernel HID,TUIO以及多点触控鼠标模拟器。
  • 商业友好:根据MIT许可证(从1.7.2开始)和LGPL 3,Kivy是100%免费使用。该工具包是专业开发,支持和使用的。可以在商业产品中使用它。该框架是稳定的,并且具有完善的API,以及可帮助您入门的编程指南。
  • GPU加速:图形引擎是基于OpenGL ES 2构建的,使用现代、快速的图形管线。该工具包带有20多个小部件,全部高度可扩展。许多部分基于Cython用C编写,并通过回归测试进行了测试。


第一步,安装依赖


如果引擎是python,将python3替换为python即可


1.安装环境依赖

$ sudo apt update
$ sudo apt install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev \
   pkg-config libgl1-mesa-dev libgles2-mesa-dev \
   python3-setuptools libgstreamer1.0-dev git-core \
   gstreamer1.0-plugins-{bad,base,good,ugly} \
   gstreamer1.0-{omx,alsa} python3-dev libmtdev-dev \
   xclip xsel libjpeg-dev


2.ffplayer依赖


$ sudo apt install ffmpeg libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev \
   libavutil-dev libswscale-dev libswresample-dev libpostproc-dev libsdl2-dev libsdl2-2.0-0 \
   libsdl2-mixer-2.0-0 libsdl2-mixer-dev python3-dev


3.PIP依赖


$ pip3 install Cython==0.29.10 pillow
$ pip3 install pygame   基于pygame开发
$ pip3 install pygments docutils
$ pip3 install pytest 用于测试


第二步,下载开发者版本


下载Kivy开发者版本

$ git clone git://github.com/kivy/kivy.git

可以在该目录下找到kivy文件夹

image.png


第三步,安装


然后进入kivy文件夹进行编译


$ cd kivy
$ python setup.py build_ext --inplace -f 

上述命令第二条可以用make指令替换,其含义相同

$ make

安装命令

$ python3 setup.py install


第四步,修改配置(可忽略,有问题再添加)


在编写的文件中添加

import os
#os.environ['KIVY_VIDEO'] = 'ffpyplayer'
#os.environ['KIVY_TEXT'] = 'pil'
os.environ['KIVY_WINDOW'] = 'sdl2'


第四步,测试


项目组基于pytest提供了一组单元测试


$ make test

image.png

最后给一个动图来看一下有多炫酷,此处稍等3s,看了测试甚至想唱一首黑的白的红的黄的紫的绿的蓝的灰的。

1666020193367.jpg


第五步,写一个简单的APP


代码


from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
    def build(self):
        return Button(text='Hello World')
TestApp().run()

OK,运行之就可以得到熟悉的配方

image.png


相关文章
|
3月前
|
存储 人工智能 测试技术
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
本文介绍如何使用LangChain结合DeepSeek实现多轮对话,测开人员可借此自动生成测试用例,提升自动化测试效率。
528 125
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
|
3月前
|
监控 数据可视化 数据挖掘
Python Rich库使用指南:打造更美观的命令行应用
Rich库是Python的终端美化利器,支持彩色文本、智能表格、动态进度条和语法高亮,大幅提升命令行应用的可视化效果与用户体验。
262 0
|
2月前
|
数据可视化 关系型数据库 MySQL
【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
本文详解基于Python的电影TOP250数据可视化大屏开发全流程,涵盖爬虫、数据存储、分析及可视化。使用requests+BeautifulSoup爬取数据,pandas存入MySQL,pyecharts实现柱状图、饼图、词云图、散点图等多种图表,并通过Page组件拖拽布局组合成大屏,支持多种主题切换,附完整源码与视频讲解。
267 4
【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
|
2月前
|
传感器 运维 前端开发
Python离群值检测实战:使用distfit库实现基于分布拟合的异常检测
本文解析异常(anomaly)与新颖性(novelty)检测的本质差异,结合distfit库演示基于概率密度拟合的单变量无监督异常检测方法,涵盖全局、上下文与集体离群值识别,助力构建高可解释性模型。
338 10
Python离群值检测实战:使用distfit库实现基于分布拟合的异常检测
|
3月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
456 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
2月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
133 1
|
3月前
|
数据采集 存储 XML
Python爬虫技术:从基础到实战的完整教程
最后强调: 父母法律法规限制下进行网络抓取活动; 不得侵犯他人版权隐私利益; 同时也要注意个人安全防止泄露敏感信息.
745 19
|
4月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
283 18
|
3月前
|
数据采集 存储 JSON
使用Python获取1688商品详情的教程
本教程介绍如何使用Python爬取1688商品详情信息,涵盖环境配置、代码编写、数据处理及合法合规注意事项,助你快速掌握商品数据抓取与保存技巧。
|
开发框架 开发者 Python
探索Python GUI编程:从Tkinter到PyQt的全方位使用
在当今技术发展日新月异的时代,Python作为一种简洁高效的编程语言,拥有广泛的应用领域。其中,GUI(图形用户界面)编程是Python开发者经常涉足的领域之一。本文将介绍两个常用的Python GUI库——Tkinter和PyQt,并深入探讨其使用方法、特点以及适用场景,帮助读者全面了解Python GUI编程的魅力。
308 0

推荐镜像

更多