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. Kafka常用命令及详细介绍

    目录 常用操作 Sentry kafka 清理 Kafka 术语 Kafka 主题剖析 Kafka 生产者 kafka 消费者和消费组 一致性和可用性 写入处理 失败处理 Kafka 客户端一致性 文 ...

  2. 在Intellij IDEA中新建Web项目

    1.点击左上角 文件(F) ,--> new  --> 项目 2.勾选下面的复选框,下一步就是给项目起名字和存放项目的位置 2.在Web文件下新建 clsses 和 lib文件夹:http ...

  3. Springboot中Rest风格请求映射如何开启并使用

    问题引入 因为前端页面只能请求两种方式:GET请求和POST请求,所以就需要后台对其进行处理 解决办法:通过springmvc中提供的HiddenHttpMethodFilter过滤器来实现 而由于我 ...

  4. Kubernetes全栈架构师(二进制高可用安装k8s集群扩展篇)--学习笔记

    目录 二进制Metrics&Dashboard安装 二进制高可用集群可用性验证 生产环境k8s集群关键性配置 Bootstrapping: Kubelet启动过程 Bootstrapping: ...

  5. asp.net 读取 connectionStrings

    connectionStrings 在vs.net 2005 beta 2开始,如果你在web.config中使用了数据库连接字符串的配置,那么应该按如下的方法去写: <connectionSt ...

  6. 【翻译】拟合与高斯分布 [Curve fitting and the Gaussian distribution]

    参考与前言 英文原版 Original English Version:https://fabiandablander.com/r/Curve-Fitting-Gaussian.html 如何通俗易懂 ...

  7. LeetCode 895. Maximum Frequency Stack

    题目链接:https://leetcode.com/problems/maximum-frequency-stack/ 题意:实现一种数据结构FreqStack,FreqStack需要实现两个功能: ...

  8. 详解API Gateway流控实现,揭开ROMA平台高性能秒级流控的技术细节

    摘要:ROMA平台的核心系统ROMA Connect源自华为流程IT的集成平台,在华为内部有超过15年的企业业务集成经验. 本文分享自华为云社区<ROMA集成关键技术(1)-API流控技术详解& ...

  9. 常用js代码积累

    1,js判断进入可视区,参考(亲测不行):https://www.cnblogs.com/Marydon20170307/p/8830069.html 重点学习的话,可参考: js计算元素距离顶部的高 ...

  10. request - cookie 操作(一)

    from urllib import request#headers 带cookieblog_url = "http://www.renren.com/452057374/profile?r ...