- 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 应用程序窗口一次只能容纳一个小部件。因此,如果您尝试添加两个按钮,则只会显示第二个按钮。另一方面,良好的图形用户界面需要不同的部件,例如标签、文本输入框、按钮等,以符合人体工程学地放置。为此,Kivy 框架提供了布局。布局本身是一个能够容纳其他小部件的小部件。因此,布局被称为容器小部件。
在 Kivy 中,提供了不同类型的布局容器。它们都实现了在“kivy.uix.layout”模块中定义的 Layout 接口。Layout 接口本身继承了 Widget 类。
此接口的两个最重要的方法是:
add_widget()
remove_widget()
add_widget()
此方法用于将新的小部件添加为此布局的子项。其语法如下:
add_widget(self, widget, *args, **kwargs)
参数
widget - 要添加到我们的子项列表中的小部件。
index - 在列表中插入小部件的索引。请注意,默认值为 0 表示小部件插入到列表的开头,因此将绘制在其他同级小部件的顶部。
canvas - 要将小部件的画布添加到其中的画布。可以是 'before'、'after' 或 None(使用默认画布)。
remove_widget
此方法用于从此小部件的子项中删除一个小部件。以下是其语法:
remove_widget(self, widget, *args, **kwargs)
其中,参数“widget”代表要从子项列表中删除的小部件。
请注意,Layout 是一个接口,因此不能直接使用。实现这些方法的 Layout 类是具体的类,如下列列表所示:
序号 | 方法和描述 |
---|---|
1 | AnchorLayout 小部件可以锚定到 'top'、'bottom'、'left'、'right' 或 'center'。 |
2 | BoxLayout 小部件按顺序排列,方向为 'vertical' 或 'horizontal'。 |
3 | FloatLayout 小部件基本上不受限制。 |
4 | RelativeLayout 子小部件相对于布局定位。 |
5 | GridLayout 小部件排列在由 rows 和 cols 属性定义的网格中。 |
6 | PageLayout 用于创建简单的多页布局,允许使用边框轻松从一页翻到另一页。 |
7 | ScatterLayout 小部件的定位类似于 RelativeLayout,但可以平移、旋转和缩放。 |
8 | StackLayout 小部件按 lr-tb(从左到右,然后从上到下)或 tb-lr 顺序堆叠。 |
在接下来的章节中,我们将详细讨论这些布局,并提供相关的示例。