关于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属性及文本标记实操练习的更多相关文章

  1. kivy之Button常用属性实操练习

    kivy提供了Button按钮一系列属性来改变样式,下面列了常用的一些Button属性并用实操案例进行演练学习. 新建一个main.py,内容代码如下: from kivy.app import Ap ...

  2. kivy之CheckBox属性实操学习

    checkbox部件属性不多,本练习举例了单选,复选二种方式,并将各checkbox进行id命名,每个都绑定了相同的动作,具体大家可以看源码进行学习. 先在开发工具pycharm里新建一个项目,然后新 ...

  3. kivy之TextInput属性实操练习

    TextInput属性比较多,常用在页面设计上的属性做了实操练习,便于很直观的了解学习本部件.并将其中一个输入提示的属性在实操源码里单独建立了一个功能进行演示. 主程序文件main.py我就不贴出来了 ...

  4. D3力布图绘制--在曲线路径上添加文本标记

    今天遇到一个在曲线路径上标识文本标记的问题,找到一个比较好的解决思路,在这里分享下: 使用d3建立的Force Layout,加上自定义的箭头形状,将多条连接线线改成弧线(https://www.cn ...

  5. Browser Security-超文本标记语言(HTML)

    Browser Security-超文本标记语言(HTML) 瞌睡龙 · 2013/06/19 18:55 重要的4个规则: 1 &符号不应该出现在HTML的大部分节点中. 2 尖括号< ...

  6. svn 修改文件的二进制或文本标记

    在添加一个文件的时候,svn自动标记成了二进制文件.当时也没在意就提交了.结果修改了之后不能进行svn diff操作,说是二进制文件不能进行diff操作.在网上找了个方法,修改这个文件的标记属性,把这 ...

  7. html5--3.14 lable元素和label属性

    html5--3.14 lable元素和label属性 学习要点 掌握label元素的使用 掌握label属性的使用 lable元素 用来为 input 元素定义标注(标记),建立一个与之相关联的标签 ...

  8. css 01-CSS属性:字体属性和文本属性

    01-CSS属性:字体属性和文本属性 #本文重要内容 CSS的单位 字体属性 文本属性 定位属性:position.float.overflow等 #CSS的单位 html中的单位只有一种,那就是像素 ...

  9. 【CSS简介、基础选择器、字体属性、文本属性、引入方式】前端小抄(2) - Pink老师自学笔记

    [CSS简介.基础选择器.字体属性.文本属性.引入方式]前端小抄(2) 本学习笔记是个人对 Pink 老师课程的总结归纳,转载请注明出处! 一.CSS简介 CSS 的主要使用场景就是布局网页,美化页面 ...

随机推荐

  1. Jenkins+Sonar 项目构建前代码审查

    一.sonar简介 1.概述 Sonar (SonarQube)是一个开源平台,用于持续检查代码质量,不只是一个质量数据报告工具,更是代码质量管理平台. 支持Java, C#, C/C++, PL/S ...

  2. MapReduce显示最受欢迎的Top10课程(按照课程编号)

    上篇博客已经说过,会将代码进行优化,并通过TreeMap进行排序实现,现在简单说明一下代码的思路. 项目以上传到github:https://github.com/yandashan/MapReduc ...

  3. java面向对象程序设计(下)-枚举类

    在某些情况下,一个类的对象是有限而且固定的,比如季节类,它只有4个对象;再比如行星类,目前只有8个对象,这些实例有限而且固定的类,在Java中被称为枚举类 JDK1.5新增了一个enum关键字,(它与 ...

  4. SpringBoot通过Ajax批量将excel中数据导入数据库

    Spring Boot通过Ajax上传Excel并将数据批量读取到数据库中 适合场景:需要通过excel表格批量向数据库中导入信息 操作流程 [1]前端上传一个excel表格 [2] 后端接收这个ex ...

  5. python + mysql 实现表更新数据

    实例如下: import pymysqldef Update_Set(): #打开数据库链接 db = pymysql.connect("localhost","root ...

  6. 部署springboot时出现的问题

    一.打包出现问题 后经发现是因为maven的打包插件的版本问题,需要修改版本 <plugins> <plugin> <groupId>org.springframe ...

  7. spring-1-spring介绍和IOC容器开发

    一.介绍 1.版本 2.下载(jar包依赖) 下载 所以搜索:https://repo.spring.io/release/org/springframework/spring/ 文件分配 maven ...

  8. odoo看板笔记

    案例0001 odoo中看板使用 #其中一定要many2one阶段字段名称 stage_id <kanban default_group_by="stage_id"> ...

  9. 货币兑换问题(动态规划法)——Python实现

      # 动态规划法求解货币兑换问题 # 货币系统有 n 种硬币,面值为 v1,v2,v3...vn,其中 v1=1,使用总值为money的钱与之兑换,求如何使硬币的数目最少,即 x1,x2,x3... ...

  10. Android开发在Activity外申请权限调用相机打开相册

    问题描述: 最近在项目中遇到一个需要调用相册和打开相机的需求,但是,在Android 6.0以后,调用相册属于危险权限,需要开发者动态获取,这就意味着我们申请权限是与Activity绑定的,但如果一个 ...