kivy之Label属性及文本标记实操练习
关于kivy内label功能有二部分内容,一个是label小部件属性,另一个是label文本标记属性,实操练习的效果图如下:
.
现将label常用的这二类属性整理如下:

现在我们来进行实操练习,在pycharm里先新建一个项目,然后在项目内新建main.py文件,内容代码如下:
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout class LabelBoxLayout(BoxLayout):
def __init__(self,**kwargs):
super(LabelBoxLayout, self).__init__(**kwargs) #设置引用时,markup属性必须设置为真(True、1)
#将Label文本标记,单击Lable文本时会触发绑定的事件,单击hello文本则不会
label_ref=Label(text='你好[ref=label]Label[/ref]',markup=True,color=(.9,.2,.1,1)) #绑定触发事件,回调方法
label_ref.bind(on_ref_press=self.print_it)
self.add_widget(label_ref) #未使用到self,建议设置为静态方法
@staticmethod
def print_it(*args):
print('print_it已经运行') class LabelApp(App):
def build(self):
return LabelBoxLayout() if __name__ =='__main__':
LabelApp().run()
再建一个label.kv文件,内容代码如下:
<LabelBoxLayout>:
canvas:
Color:
rgba:1,1,1,1
Rectangle:
pos:self.pos
size:self.size
orientation:'vertical' #指定布局方向 Label: #添加一个标签,[ref]标记的内容是可以做为触发事件的标记
text:'[ref="click"]只能[/ref][sub]显示[/sub][color=#"FFFF00"]字体中[/color]可用的符号'
font_size:30 #字体大小
bold:True #字体加粗
color:.9,.2,.1,1 #字体颜色
outline_color:0,0,1 #添加文本轮廓颜色
outline_width:1 #添加文本轮廓宽度
text_size:cm(8),mm(20) #标签文本框大小
halign:'right' #水平对齐方式
valign:'middle' #垂直对齐方式
strikethrough:True #是否添加删除线
shorten:True #文本长度比文本框大是缩短文本
shorten_from:'right' #当shorten:True时,从right右方向缩短文本
markup:True
#触发事件
on_ref_press:
print('ref命名的单击事件已经运行')
root.print_it() Label:
#设置背景
canvas:
Color:
rgba:(.1,.1,.1,.1)
Rectangle:
pos:self.pos
size:self.size
text:'只能[sup]显示[/sup]字体中可用的符号'
font_size:20
color:.2,.2,.9,1
bold:True
text_size:cm(10),cm(2)
halign:'left'
valign:'top'
underline:True #是否添加下划线
line_height:2.0 #行高
markup:True
本文项目源码文件包可点此下载,下载可自行调试学习。
kivy之Label属性及文本标记实操练习的更多相关文章
- kivy之Button常用属性实操练习
kivy提供了Button按钮一系列属性来改变样式,下面列了常用的一些Button属性并用实操案例进行演练学习. 新建一个main.py,内容代码如下: from kivy.app import Ap ...
- kivy之CheckBox属性实操学习
checkbox部件属性不多,本练习举例了单选,复选二种方式,并将各checkbox进行id命名,每个都绑定了相同的动作,具体大家可以看源码进行学习. 先在开发工具pycharm里新建一个项目,然后新 ...
- kivy之TextInput属性实操练习
TextInput属性比较多,常用在页面设计上的属性做了实操练习,便于很直观的了解学习本部件.并将其中一个输入提示的属性在实操源码里单独建立了一个功能进行演示. 主程序文件main.py我就不贴出来了 ...
- D3力布图绘制--在曲线路径上添加文本标记
今天遇到一个在曲线路径上标识文本标记的问题,找到一个比较好的解决思路,在这里分享下: 使用d3建立的Force Layout,加上自定义的箭头形状,将多条连接线线改成弧线(https://www.cn ...
- Browser Security-超文本标记语言(HTML)
Browser Security-超文本标记语言(HTML) 瞌睡龙 · 2013/06/19 18:55 重要的4个规则: 1 &符号不应该出现在HTML的大部分节点中. 2 尖括号< ...
- svn 修改文件的二进制或文本标记
在添加一个文件的时候,svn自动标记成了二进制文件.当时也没在意就提交了.结果修改了之后不能进行svn diff操作,说是二进制文件不能进行diff操作.在网上找了个方法,修改这个文件的标记属性,把这 ...
- html5--3.14 lable元素和label属性
html5--3.14 lable元素和label属性 学习要点 掌握label元素的使用 掌握label属性的使用 lable元素 用来为 input 元素定义标注(标记),建立一个与之相关联的标签 ...
- css 01-CSS属性:字体属性和文本属性
01-CSS属性:字体属性和文本属性 #本文重要内容 CSS的单位 字体属性 文本属性 定位属性:position.float.overflow等 #CSS的单位 html中的单位只有一种,那就是像素 ...
- 【CSS简介、基础选择器、字体属性、文本属性、引入方式】前端小抄(2) - Pink老师自学笔记
[CSS简介.基础选择器.字体属性.文本属性.引入方式]前端小抄(2) 本学习笔记是个人对 Pink 老师课程的总结归纳,转载请注明出处! 一.CSS简介 CSS 的主要使用场景就是布局网页,美化页面 ...
随机推荐
- Hibernate框架(五)面向对象查询语言和锁
Hibernate做了数据库中表和我们实体类的映射,使我们不必再编写sql语言了.但是有时候查询的特殊性,还是需要我们手动来写查询语句呢,Hibernate框架为了解决这个问题给我们提供了HQL(Hi ...
- 如何查看wsdl文档
http://www.360doc.com/content/16/1027/00/37651083_601648996.shtml
- bugku SKCTF管理系统
这题hint是sql约束攻击...sql约束攻击其实我没了解过,当时就各种百度,现在总结一下 0x01: sql约束攻击:通常是sql查询语句select * from username= 'lin' ...
- css--filter(滤镜) 属性
前言 前段时间找工作面试官问到一个问题,你如何将一个网页整体置灰?面试遇到这样的问题,一下束手无策,之前没有接触过这样的需求,因此没有回答上来,面试结束我才知道了这是考查对 CSS3 的新属性的了解. ...
- 史上最强Tableau Server 安装教程
前言 本文介绍的是单节点部署Tableau Server. 安装前 1.Tableau Server 的单节点安装的最低硬件推荐配置: 处理器: 64 位 必须支持 SSE4.2 和 POPCNT 指 ...
- C语言:赋值
#include <stdio.h> //=赋值运算符 //具有方向性,只能将赋值号右边的表达式的值给左边的变量 //赋值语句具有计算功能,赋值号右边可以是常量,变量或表达式都可以 //赋 ...
- ZooKeeper 分布式锁 Curator 源码 03:可重入锁并发加锁
前言 在了解了加锁和锁重入之后,最需要了解的还是在分布式场景下或者多线程并发加锁是如何处理的? 并发加锁 先来看结果,在多线程对 /locks/lock_01 加锁时,是在后面又创建了新的临时节点. ...
- Laravel使用artisan快速实现表单的登陆注册
1. 开发环境 macOS Mojave 10.14.6 XAMPP 5.6.38 Laravel 5.2 2. 在终端,先进入到项目根目录并执行执行命令 php artisan make:auth ...
- [HNOI2008]GT考试 题解
这题比较难搞.考虑设计状态:\(f_{i,j}\) 表示当前考虑到 \(X_i\) 位,且 \(X\) 的后 \(j\) 位刚好与 \(A\) 列匹配时的方案数.最终答案为 \(\sum_{i=0}^ ...
- 流畅的python--装饰器
装饰器:以某种方式增强函数.两大特性:1.可以将被装饰的函数替换成其他函数. 2.在加载模块时立即执行.案例1def make_avarage(): count=0 total=0 def avera ...