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 的主要使用场景就是布局网页,美化页面 ...
随机推荐
- 12 shell case in语句
Shell也支持两种分支结构(选择结构),分别是 if else 语句和 case in 语句.当分支较多,并且判断条件比较简单时,使用 case in 语句就比较方便了. if else 语句与ca ...
- linux 生成密钥
p.p1 { margin: 0; font: 16px "Helvetica Neue" } span.s1 { font: 16px ".PingFang SC&qu ...
- F5负载均衡_monitors(健康检查)
故障现象: 后端有5台服务器,每个服务器上跑着8个应用.使用F5做应用负载调度.这40个应用里面,3-10个应用在高峰期的时候weblogic的DOS窗口显示与数据库断开连接(端口通.业务断),但是F ...
- luogu P2710 数列
(这是个双倍经验呀! 题目描述 维护一个可以支持插入.删除.翻转.区间赋值.求和.求值和求最大子段和操作的序列.(真·简洁) solution 基本不用什么神奇操作,平衡树硬上就行.(我用的 Spla ...
- 重拾javaweb(假期后第一次web测试)
上学期通过十六周的时间,完成了javaweb的项目实践,其中包括很多次的练习以及测试.寒假时间大多用来挥霍,并没有对这些知识进行复习以及进一步的学习,所以在这场考试中,最终以八分的可怜成绩收尾,实在过 ...
- spring-3-spring整合mybatis
版本和依赖 MyBatis-Spring 需要以下版本: maven依赖 <dependency> <groupId>org.mybatis</groupId> & ...
- Java数据库分表与多线程查询结果汇总
今天接到一个需求:要对一个物理分表的逻辑表进行查询统计.而数据库用的是公司自己研发的产品,考虑的到公司产品的特点以及业务的需求,该逻辑表是按年月进行分表的,而非分区.我们来看一下,在按时间段进行查询统 ...
- 什么是TCP?什么是TCP协议?
一.什么是TCP >>>TCP是一种传输控制协议,是面向连接的.可靠的.基于字节流之间的传输层通信协议 >>>在因特网协议族里面,TCP层是在IP层上面,应用层下面 ...
- 《Node+MongoDB+React 项目实战开发》已出版
前言 从深圳回长沙已经快4个月了,除了把车开熟练了外,并没有什么值得一提的,长沙这边要么就是连续下一个月雨,要么就是连续一个月高温暴晒,上班更是没啥子意思,长沙这边的公司和深圳落差挺大的,薪资也是断崖 ...
- Gos Log每次查询响应后自动清理临时文件,优化磁盘空间
客户端清理 logc/controllers/file/file.go 压缩后清理原始文件 //压缩成功后 删除原文件 os.Remove(src) 返回后清理压缩文件 defer func() { ...