kivy中size和pos的使用
kivy中位置和大小属性的使用:
-------------------位置----------------------------
1.pos_hint(‘x-axis-key’:value,’y-axis-key’:value )
#pos_hint接受的是一个dict格式. x-axis-key主要包括x,center_x,right;
y-axis-key主要包括:y,center_y,top.
注意:这里面value的取值都是比例值,通常为0-1.
#参数详解(下图):
x: 代表widget的最左边边线;
center_x: 代表竖着从中间切开widget的那条中线
right: 代表widget最右边的边线
y: 代表widget最底边的边线
center_y: 代表横着从中间切开widget的那条中线
top: 代表widget最顶端的边线.
#注意, 这六个参数代表的是边线, 不是某个点!!!
———————————————————————————
———————————————————————————
2.pos: [x , y]:
x, y 代表固定的坐标值,单位是pixel.
也可单独对x和y的具体位置进行赋值. 这里使用到的关键字就是pos_hint中x轴和y轴的关键字.
不过注意!!!这里的赋值都是固定数目的pixel值.不再是比例值!!!
并且,不能再在pos_hint中使用相同的关键字了.
eg: x:0
top: root.height
----------------------------大小——————————————
1.size_hint:[width, height]
#也可分开写,即size_hint_x/size_hint_y. 取值全部是比例值,即0-1, 或者是None(为了使用像素值单位width,height,size)
2.size:[width,height]
#和size_hint不同处在于这里的取值全部是固定的像素值,不再是比例值!!!
#也可以分开写, 即widht/height. 取值一样全部是像素值.
#这里要注意的是:想使用size, width或者height的时候, 必须要将对应的size_hint,size_hint_x,或size_hint_y设置成None
eg:使用size(),就需要设置size_hint:(None,None)
使用width,就需要size_hint_x:None
使用height,则size_hint_y:None
Tips:
1.Widget不接受比例值, 不管是大小还是位置.即(size_hint,size_hint_x,size_hint_y,pos_hint)不接受.
以pixel为单位的属性值都是接受的,即(size,width,height,pos,x,right,center_x,y,center_y,top)
2.pos_hint只在FloatLayout,RelativeLayout和BoxLayout中起作用.3
3.在FloatLayout中使用pos,得到的位置是是对于整个Window的,并不是相对于self layout的,
但是, 如果使用pos_hint指定位置的话, 就会得到相对于self layout的位置, 因为pos_hint一直使用的是relative coordinate.
4.任何一个Layout里面都是是优先使用pos_hint的属性的, 如果想使用固定值的位置属性(这里包括pos,x,center_x,right,y,center_y,top), 需要声明代码中并没有使用pos_hint的属性.
5.任何一个Layout里面, 如果我们想使用size, height, width的属性进行赋值, 需要将size_hint里对应部分的值设置成None; 即可以把size_hint, size_hint_x, size_hint_y设置成None, 以此来激活size, width, height.
注意: [size, height, width]代表的都是比例值, 一般取值从0到1;
[size, width, height]代表的都是具体的像素值(pixel)
eg: 设置size_hint: (None, .10)以后,就可以使用height来赋值高的长度了.
kivy中size和pos的使用的更多相关文章
- jquery中,size()和length()方法有啥区别
jquery中,size()和length()方法有啥区别? size()是jQuery提供的函数,而length是属性(不带括号). jQuery提供的源代码是这样的: size: function ...
- kivy中bind的使用
一般在kivy中使用bind()来绑定回调函数,所谓回调函数,个人理解就是一个预先定义好的方法, 因为APP是静态的, 需要等待用户进行操作, 特定的操作背后都绑定了特定的回调函数, 一般有两种类型: ...
- Kivy中显示汉字的问题
1. kivy中显示中文乱码和提示错误的原因: 编码问题 字体问题 2. 字体问题的解决 可以下载支持中文的字体文件ttf,我这里使用了微软雅黑中文简体msyh.ttf.我们在编写布局时可以直接在相关 ...
- 在kivy中加图片
from kivy.app import App from kivy.uix.scatterlayout import ScatterLayout from kivy.uix.image import ...
- juquery 中 size()和length的区别 以及优缺点
size()是jQuery提供的函数,而length是属性(不带括号).jQuery提供的源代码是这样的:size: function() {return this.length;}其实也就是说,在j ...
- matlab中size函数总结
size(A)函数是用来求矩阵的大小的. 比如说一个A是一个3×4的二维矩阵: 1.size(A) %直接显示出A大小 输出:ans= 3 4 2.s=size(A)%返回一个行向量s,s的第一个元素 ...
- STL:string类中size()与length()的区别
结论是:两者没有任何区别 解释: C++Reference中对于两者的解释: 两者的具体解释都一模一样: 理解: length是因为C语言的习惯而保留下来的,string类最初只有length,引进S ...
- Matlab中size、numel、length、fix函数的使用
size():获取矩阵的行数和列数 (1)s=size(A), 当只有一个输出参数时,返回一个行向量,该行向量的第一个元素时矩阵的行数,第二个元素是矩阵的列数. (2)[r,c]=size ...
- java 中 size() 和 length()
偶然发现自己不清楚 java size() 和length()是干嘛用的,总结一下: 1.java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这 ...
随机推荐
- (转)Fabric CA环境的集成
PS:因为我部署的是集群(4peer+1order),需要为order,org1,org2分别建立一个CA,拿org1使用举例,获取org1根证书私钥名称:PRIVATE_KEY.sh #!/bin/ ...
- asp.net几个重要对象
DataSet是用来做连接sql的一种方法,意思是把数据库的副本存在应用程序里,应用程序开始运行时,把数据库相关数据保存到DataSet.DataTable表示内存中数据的一个表.常和DefaultV ...
- ELK(上)
什么是ELK: ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件.新增了一个FileBeat,它是一个轻量级的日志收集处理工 ...
- git cherry-pick 报错is a merge but no -m option was given
gerrit上提示代码冲突的时候,我们首先会想到rebase下,不行的话就只能解决冲突了,最简单的做法是我的另一篇博客https://www.cnblogs.com/zndxall/p/9140813 ...
- [LeetCode] 78. Subsets tag: backtracking
Given a set of distinct integers, nums, return all possible subsets (the power set). Note: The solut ...
- Github Pages 搭建网站
参考网站: https://pages.github.com/ http://gitbeijing.com/pages.html 搬进github:http://gitbeijing.com
- 家庭记账本之Github账号注册与安装(二)
好多程序猿都在使用github用来存放自己的代码:但是如果仅仅用github的web版本的话:有一些功能还是需要使用git客户端工具才能操作的: 那么今天将指导大家如何安装GitHub for win ...
- cocos游戏开发小白教程网站
<Quick-Cocos2d-x v3.3小白书系列教程> <Quick-Cocos2d-x初学者游戏教程>
- Mysql自增ID起始值修改
在mysql中很多朋友都认为字段为AUTO_INCREMENT类型自增ID值是无法修改,其实这样理解是错误的,下面介绍mysql自增ID的起始值修改与设置方法.通常的设置自增字段的方法:创建表格时添加 ...
- 百度编辑器 Ueditor
针对与编辑器里面的图片的存储问题:\ueditor\1.4.3\php\conf.json 文件里面 /* 前后端通信相关的配置,注释只允许使用多行方式 */{/* 上传图片配置项 */“imageA ...