kivy提供了Button按钮一系列属性来改变样式,下面列了常用的一些Button属性并用实操案例进行演练学习。

新建一个main.py,内容代码如下:

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.floatlayout import FloatLayout class ButtonFloatLayout(FloatLayout):
def __init__(self,**kwargs):
super(ButtonFloatLayout, self).__init__(**kwargs) bt=Button(text='按钮', background_color=[1,.5,.5,1],on_release=self.release_button, pos=(300,0),size_hint=(.2,.15)) #添加一个按钮
bt.bind(on_press=self.press_button) #绑定触发事件
self.add_widget(bt) #添加到布局 def press_button(self,arg):
print('按下按钮事件已运行') def release_button(self,arg):
print('按下并释放时触发事件已运行') class ButtonApp(App):
def build(self):
return ButtonFloatLayout() if __name__ =='__main__':
ButtonApp().run()

再建一个button.kv文件,代码内容如下:

<MyButton@Button>:   #自定义按钮,设置按钮的公共属性
size_hint:.2,.15 #设置按钮大小 <ButtonFloatLayout>:
#设置布局背景色,大小
canvas:
Color:
rgba:[1,1,1,1]
Rectangle:
pos:self.pos
size:self.size Button: #使用原生按钮
text:'按钮00' #按钮显示文本
bold:10 size_hint:.2,.15 #设置按钮大小
pos:65,400 #设置x座标=65,y座标=400的位置显示此按钮
background_normal:'' #标准背景颜色
background_color:[.1,.5,.5,1] #背景颜色 MyButton: #自定义按钮
text:'按钮01'
pos:315,400
disabled:True #禁用状态为真 MyButton:
text:'按钮02'
color:[.8,.3,.3,1] #设置按钮字体颜色
pos:565,400
on_release:root.release_button(self) #触发事件 on_press:
root.press_button(self) #触发事件,在KV内要触发多个事件要换行写
print('laizl.com') MyButton:
text:'按钮03'
font_size:15
pos:65,150 MyButton:
text:'按钮04'
font_size:25
pos:315,150
state:'normal' #按钮状态 MyButton:
text:'按钮05'
pos:565,150
state:'down' #按下状态

建好文件,就可以运行main.py文件看到效果了。也可直接到这里下载案例源码学习。

kivy之Button常用属性实操练习的更多相关文章

  1. kivy之TextInput属性实操练习

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

  2. kivy之CheckBox属性实操学习

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

  3. Appium常用Api实操

    本文是基于python语言在android上实操的,仅记录(忽略排版~~~) 会不时更新的: from appium import webdriver from selenium.webdriver. ...

  4. kivy之ProgressBar、ToggleButton实操学习

    之所以将kivy的ProgressBar(进度条)与ToggleButton(切换按钮)作一篇内容来记录学习,是因为这两个内容比较简单,源码内容篇幅也少. 两个功能实例源码均以main.py+prog ...

  5. Tkinter的l组件常用属性

    Label常用属性 序号 属性 说明 1  anchor   指示文字会被放在控件的什么位置, 可选项有 N, NE, E, SE, S, SW, W, NW, CENTER. 默认为 CENTER. ...

  6. kivy之Label属性及文本标记实操练习

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

  7. HDFS集群PB级数据迁移方案-DistCp生产环境实操篇

    HDFS集群PB级数据迁移方案-DistCp生产环境实操篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 用了接近2个星期的时间,终于把公司的需要的大数据组建部署完毕了,当然,在部 ...

  8. 决策树算法的Python实现—基于金融场景实操

    决策树是最经常使用的数据挖掘算法,本次分享jacky带你深入浅出,走进决策树的世界 基本概念 决策树(Decision Tree) 它通过对训练样本的学习,并建立分类规则,然后依据分类规则,对新样本数 ...

  9. 【Android自学日记】五大布局常用属性

    线性布局(LinearLayout)常用属性: android:orientation="vertical"--决定子类控件的排布方式(vertical垂直:horizontal水 ...

随机推荐

  1. Acunetix引入了Docker支持,扫描统计信息以及将漏洞发送到AWS WAF的功能

    已针对Windows,Linux和macOS发布了新的Acunetix更新:14.2.210503151. 此Acunetix更新引入了Docker支持,针对每次扫描显示的新"扫描统计信息& ...

  2. webview和H5交互

    由于H5的灵活多变,动态可配的特点,也为了避免冗长 的审核周期,H5页面在app上的重要性正日益突显. iOS应用于H5交互的控件主要是UIWebView及WKWebView WKWebView是14 ...

  3. WPF教程十四:了解元素的渲染OnRender()如何使用

    上一篇分析了WPF元素中布局系统的MeasureOverride()和ArrangeOverride()方法.本节将进一步深入分析和研究元素如何渲染它们自身. 大多数WPF元素通过组合方式创建可视化外 ...

  4. WPF教程十二:了解自定义控件的基础和自定义无外观控件

    这一篇本来想先写风格主题,主题切换.自定义配套的样式.但是最近加班.搬家.新租的房子打扫卫生,我家宝宝6月中旬要出生协调各种的事情,导致了最近精神状态不是很好,又没有看到我比较喜欢的主题风格去模仿的, ...

  5. PID算法控制直流电机笔记

    1.将偏差的比例.积分和微分通过线性组合构成控制量,用这一控制量对被控对象进行控制,这样的控制器称为PID控制器.简单说就是根据系统的误差,利用比例.积分.微分计算出控制量进行控制. 2.为什么需要P ...

  6. 等了半年,m1芯片原生支持的.NET IDE出现了

    m1芯片是苹果2020年发布的一款基于arm的桌面芯片,目前已经应用在MacBook Air .MacBook Pro.IMac.Ipad等设备上.可以说整个苹果生态圈都在去intel化. 今年年初跟 ...

  7. python05篇 json和函数

    一.json json就是一个字符串,只不过是所有语言能解析这个字符串.1.1 把python的数据类型转为json import json d = {'name': 'xiaohei', 'cars ...

  8. jconsole和jstack

    1.jconsole jconsole是jdk自带的一个可视化的jvm监控工具,可以监控本地的jvm,也可以监控远程jvm 打开本地jdk安装目录下的bin目录下的jconsole.exe 2.jst ...

  9. Linux小白基础命令操作

    [root@localhost ~]]# [当前登录系统的用户@主机名称 当前所在的目录]# #表示为管理员登录 $ 表示为普通用户登录 切换用户su 用户名     切换后所在目录不变  ,#变成$ ...

  10. C语言:整数保存 原码 反码 补码

    #include <stdio.h> /* 本题结果为:-4 short类型占据2字节 ;赋值后实际占据了3个字节,所以有溢出警告提示,结果只保留0xfffc 保存二进制:1111 111 ...