- Kivy 教程
- Kivy 首页
- Kivy 基础
- Kivy - 开始入门
- Kivy - 安装
- Kivy - 架构
- Kivy - 文件语法
- Kivy - 应用
- Kivy - Hello World
- Kivy - 应用生命周期
- Kivy - 事件
- Kivy - 属性
- Kivy - 输入
- Kivy - 行为
- Kivy 按钮
- Kivy - 按钮
- Kivy - 按钮事件
- Kivy - 按钮颜色
- Kivy - 按钮大小
- Kivy - 按钮位置
- Kivy - 圆形按钮
- Kivy - 禁用按钮
- Kivy - 图片按钮
- Kivy 组件
- Kivy - 组件
- Kivy - 标签
- Kivy - 文本输入
- Kivy - 画布
- Kivy - 线
- Kivy - 复选框
- Kivy - 下拉列表
- Kivy - 窗口
- Kivy - 滚动视图
- Kivy - 旋转木马
- Kivy - 滑块
- Kivy - 图片
- Kivy - 弹出窗口
- Kivy - 开关
- Kivy - 微调器
- Kivy - 分隔器
- Kivy - 进度条
- Kivy - 气泡
- Kivy - 标签面板
- Kivy - 散点图
- Kivy - 手风琴
- Kivy - 文件选择器
- Kivy - 颜色选择器
- Kivy - 代码输入
- Kivy - 模态视图
- Kivy - 切换按钮
- Kivy - 相机
- Kivy - 树视图
- Kivy - reStructuredText
- Kivy - 动作栏
- Kivy - 视频播放器
- Kivy - 模板视图
- Kivy - 虚拟键盘
- Kivy - 触摸涟漪
- Kivy - 音频
- Kivy - 视频
- Kivy - 拼写检查
- Kivy - 效果
- Kivy - 输入记录器
- Kivy - OpenGL
- Kivy - 文本
- Kivy - 文本标记
- Kivy - 设置
- Kivy 布局
- Kivy - 布局
- Kivy - 浮动布局
- Kivy - 网格布局
- Kivy - 箱式布局
- Kivy - 堆叠布局
- Kivy - 锚点布局
- Kivy - 相对布局
- Kivy - 页面布局
- Kivy - 回收布局
- Kivy - 布局嵌套
- Kivy 高级概念
- Kivy - 配置对象
- Kivy - 图集
- Kivy - 数据加载器
- Kivy - 缓存管理器
- Kivy - 控制台
- Kivy - 动画
- Kivy - 多笔画
- Kivy - 时钟
- Kivy - SVG
- Kivy - UrlRequest
- Kivy - 剪贴板
- Kivy - 工厂
- Kivy - 手势
- Kivy - 语言
- Kivy - 图形
- Kivy - 绘图
- Kivy - 打包
- Kivy - Garden
- Kivy - 存储
- Kivy - 矢量
- Kivy - 工具
- Kivy - 检查器
- Kivy 工具
- Kivy - 日志记录器
- Kivy - 帧缓冲区
- Kivy 应用和项目
- Kivy - 绘图应用
- Kivy - 计算器应用
- Kivy - 计时器应用
- Kivy - 相机处理
- Kivy - 图片查看器
- Kivy - 贝塞尔曲线
- Kivy - 画布压力测试
- Kivy - 圆形绘制
- Kivy - 组件动画
- Kivy - 其他
- Kivy 有用资源
- Kivy - 快速指南
- Kivy - 有用资源
- Kivy - 讨论
Kivy 工具
“kivy.tools”模块包含一些非常有用的脚本、命令行实用程序和示例。
KV 查看器
Kivy 没有官方的可视化GUI设计器。因此,Kivy应用程序的布局设计变得很繁琐,因为在创建“kv”文件时计划好的组件放置,在应用程序中加载时往往不会得到预期的结果。
此Kv查看器实用程序允许您动态显示“kv”文件,并考虑其更改。此实用程序的优点之一是,只有当您对该布局满意时,才加载此“kv”脚本。
KViewer是一个命令行实用程序,需要“.kv”文件作为参数。
python kviewer.py demo.kv
示例
以下“kv”文件包含Demo应用程序的设计:
TabbedPanel: size_hint: .8, .8 pos_hint: {'center_x': .5, 'center_y': .5} do_default_tab: False TabbedPanelItem: text:"Register Tab" GridLayout: cols:2 Label: text:"Name" size_hint:(.2, .1) pos_hint:{'x':.2, 'y':.75} TextInput: size_hint:(.4, .1) pos_hint:{'x':.3, 'y':.65} Label: text:"email" size_hint:(.2, .1) pos_hint:{'x':.2, 'y':.55} TextInput: size_hint:(.4, .1) pos_hint:{'x':.3, 'y':.45} Label: text:"Password" size_hint:(.2, .1) pos_hint:{'x':.2, 'y':.35} TextInput: password:True size_hint:(.4, .1) pos:(400, 150) pos_hint:{'x':.3, 'y':.25} Button: text:'Submit' size_hint : (.2, .1) pos_hint : {'center_x':.5, 'center_y':.09} TabbedPanelItem: text:'Login Tab' GridLayout: cols:2 Label: text:"email" size_hint:(.2, .1) pos_hint:{'x':.2, 'y':.55} TextInput: size_hint:(.4, .1) pos_hint:{'x':.3, 'y':.45} Label: text:"Password" size_hint:(.2, .1) pos_hint:{'x':.2, 'y':.35} TextInput: password:True size_hint:(.4, .1) pos:(400, 150) pos_hint:{'x':.3, 'y':.25} Button: text:'Submit' size_hint : (.2, .1) pos_hint : {'center_x':.5, 'center_y':.09}
输出
让我们使用kviewer实用程序查看设计:
python kviewer.py demo.kv
它将生成以下输出窗口:
基准测试
此脚本执行并显示一组基准测试的结果。这些提供了一组指标,主要用于衡量您系统的OpenGL性能。
要运行该实用程序,请使用以下命令:
Python benchmark.py
您将获得以下输出:
GL Vendor: b'Intel' GL Renderer: b'Intel(R) Iris(R) Xe Graphics' GL Version: b'4.6.0 - Build 31.0.101.3959' Benchmark --------- 1/8 Core: button creation (10000 * 10 a-z) 4.246505 2/8 Core: button creation (10000 * 10 a-z), with Clock.tick [INFO ] [GL ] NPOT texture support is available 6.612230 3/8 Core: label creation (10000 * 10 a-z) 4.543708 4/8 Core: label creation (10000 * 10 a-z), with Clock.tick 9.790683 5/8 Widget: creation (10000 Widget) 0.308506 6/8 Widget: creation (10000 Widget + 1 root) 1.734984 7/8 Widget: event dispatch (1000 on_update in 10*1000 Widget) 0.088639 8/8 Widget: empty drawing (10000 Widget + 1 root) 0.000706 Result: 27.325960 Do you want to send benchmark to gist.github.com (Y/n) : n No benchmark posted.
生成图标
此工具将帮助您生成Google Play商店、App Store、Amazon商店所需的所有图标。
您需要提供要从中生成图标的图像文件的名称,作为tools子目录中generate-icons.py脚本的参数。
python GPIcon.png
您将获得以下输出:
Generate App store high resolution: 1024x1024 Generate App store normal resolution: 512x512 Generate iPhone (iOS 7): 120x120 Generate iPhone @2 (iOS 7): 120x120 Generate iPad (iOS 7): 76x76 Generate iPad @2 (iOS 7): 152x152 Generate iPhone (iOS >= 6.1): 57x57 Generate iPhone @2 (iOS >= 6.1): 114x114 Generate iPad (iOS >= 6.1): 72x72 Generate iPad @2 (iOS >= 6.1): 114x114 Generate iTunes Artwork (ad-hoc): 512x512 Generate iTunes Artwork @2 (ad-hoc): 1024x1024 Generate Google Play icon: 512x512 Generate Launcher icon MDPI: 48x48 Generate Launcher icon HDPI: 72x72 Generate Launcher icon XHDPI: 96x96 Generate Launcher icon XXHDPI: 48x48 Generate Launcher icon XXXHDPI: 192x192 Generate Small icon: 114x114 Generate Large icon: 512x512
此实用程序生成的图标存储在各自的文件夹中:
报表工具
此工具是用户的帮助工具。它生成在调试过程中有用的转储信息。
Python report.py
部分输出如下所示:
============================================================== Options ============================================================== window = ('egl_rpi', 'sdl2', 'pygame', 'sdl', 'x11') text = ('pil', 'sdl2', 'pygame', 'sdlttf') video = ('gstplayer', 'ffmpeg', 'ffpyplayer', 'null') audio = ('gstplayer', 'pygame', 'ffpyplayer', 'sdl2', 'avplayer') image = ('tex', 'imageio', 'dds', 'sdl2', 'pygame', 'pil', 'ffpy', 'gif') camera = ('opencv', 'gi', 'avfoundation', 'android', 'picamera') spelling = ('enchant', 'osxappkit') clipboard = ('android', 'winctypes', 'xsel', 'xclip', 'dbusklipper', 'nspaste', 'sdl2', 'pygame', 'dummy', 'gtk3') The report will be sent as an anonymous gist. Do you accept to send report to https://gist.github.com/ (Y/n) : n No report posted. Enter any key to leave.
广告