checkbox部件属性不多,本练习举例了单选,复选二种方式,并将各checkbox进行id命名,每个都绑定了相同的动作,具体大家可以看源码进行学习。

先在开发工具pycharm里新建一个项目,然后新建mian.py,源码内容如下:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout class CheckBoxBoxLayout(BoxLayout):
def __init__(self,**kwargs):
super(CheckBoxBoxLayout,self).__init__(**kwargs) #通过ID获取到checkbox部件并绑定方法
self.ids.first_check_0.bind(active=self.on_checkbox_active)
self.ids.first_check_1.bind(active=self.on_checkbox_active)
self.ids.first_check_2.bind(active=self.on_checkbox_active)
self.ids.first_check_3.bind(active=self.on_checkbox_active) @staticmethod
def on_checkbox_active(checkbox,value):
if value: #这里意是如果checkbox传过来的value为True时,打印下面的内容
print('这个选择框',checkbox,'被选中',value)
else:
print('这个选择框',checkbox,'没有选中',value) class CheckBoxApp(App):
def build(self):
return CheckBoxBoxLayout() if __name__ =='__main__':
CheckBoxApp().run()

再建一个KV文件,checkbox.kv源码内容如下:

<CheckBoxBoxLayout>:
canvas:
Color:
rgba:1,1,1,1
Rectangle:
pos:self.pos
size:self.size orientation:'vertical' # 指定布局方向 GridLayout:
cols: 4
padding : 30,30
spacing: 20, 20
halign:'right'
row_default_height: '30dp' CheckBox:
group:'check_0' # 分组名
id:first_check_0 # 添加ID属性
color:.9,.2,.1,1 # 设置选择框体颜色,除canvas设置颜色用Color,其他均为color.
text:'check_0单选项1'
Label:
text: '选项1'
font_size:20
bold:True #字体加粗
color:.5,.2,.5,1 #字体颜色
valign: 'middle' CheckBox:
group:'check_0'
id:first_check_1 # 添加ID属性
color:.2,.6,.2,1
text:'check_0单选项2'
Label:
text: '选项2'
font_size:20
bold:True #字体加粗
color:.2,.9,.2,1 #字体颜色
valign: 'middle' CheckBox:
group:'check_0'
id:first_check_2 # 添加ID属性
color:.2,.2,.6,1
text:'check_0单选项3'
Label:
text: '选项3'
font_size:20
bold:True #字体加粗
color:.2,.2,.9,1 #字体颜色
valign: 'middle' CheckBox:
id:first_check_3 # 添加ID属性
color:.6,.6,.6,1
text:'check选项'
Label:
text: '选项'
font_size:20
bold:True #字体加粗
color:.9,.2,.2,1 #字体颜色
valign: 'middle'

大家也可点此下载实操项目源码导入pycharm进行练习。

kivy之CheckBox属性实操学习的更多相关文章

  1. kivy之TextInput属性实操练习

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

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

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

  3. kivy之ProgressBar、ToggleButton实操学习

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

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

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

  5. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  6. 大数据学习笔记——Linux完整部署篇(实操部分)

    Linux环境搭建完整操作流程(包含mysql的安装步骤) 从现在开始,就正式进入到大数据学习的前置工作了,即Linux的学习以及安装,作为运行大数据框架的基础环境,Linux操作系统的重要性自然不言 ...

  7. 动手实操:如何用 Python 实现人脸识别,证明这个杨幂是那个杨幂?

    当前,人脸识别应用于许多领域,如支付宝的用户认证,许多的能识别人心情的 AI,也就是人的面部表情,还有能分析人的年龄等等,而这里面有着许多的难度,在这里我想要分享的是一个利用七牛 SDK 简单的实现人 ...

  8. css知识笔记:水平垂直居中(别只看,请实操!!!)

    css实现元素的水平垂直居中. (尝试采用5W2H方法说明): 别只看,请实操!!! What: 1.这篇文档主要描述元素水平方向居中的几种最常见和最实用的几种方式,并说明优缺点. 2.写这篇文章的目 ...

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

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

随机推荐

  1. kong配置upstream实现简单的负载均衡

    目录 通过konga实现 1. 配置upstream 2. 配置Service发布 3. 配置Route,匹配规则 4. 验证结果 通过 Kong Admin API实现 1. 配置upstream ...

  2. Oracle-索引分裂研究

    目录 索引分裂介绍 分类 索引分裂实验 基础环境准备 基础信息统计--之前 数据插入 基础信息统计--之后 Trace 数据统计 数据分析 索引PRI_ID之dba_extents视图 索引PRI_I ...

  3. PAT乙级:1077 互评成绩计算 (20分)

    PAT乙级:1077 互评成绩计算 (20分) 在浙大的计算机专业课中,经常有互评分组报告这个环节.一个组上台介绍自己的工作,其他组在台下为其表现评分.最后这个组的互评成绩是这样计算的:所有其他组的评 ...

  4. K8S系列第四篇(Dockerfile)

    DokcerFile 镜像定制 更多精彩内容请关注微信公众号:新猿技术生态圈 定制docker镜像的方式有两种: 手动修改容器内容,导出新的镜像. 基于dockerfile自行编写指令,基于指令流程创 ...

  5. 并发队列ConcurrentLinkedQueue与LinkedBlockingQueue源码分析与对比

    目录 前言 ConcurrentLinkedQueue 使用方法 存储结构 初始化 入队 出队 获取容器元素数量 LinkedBlockingQueue 使用方法 存储结构 初始化 入队 出队 获取容 ...

  6. php-socket通信演示

    client: error_reporting(E_ALL); set_time_limit(0); echo "<h2>TCP/IP Connection</h2> ...

  7. 数据结构和算法学习笔记十五:多路查找树(B树)

    一.概念 1.多路查找树(multi-way search tree):所谓多路,即是指每个节点中存储的数据可以是多个,每个节点的子节点数也可以多于两个.使用多路查找树的意义在于有效降低树的深度,从而 ...

  8. Dapr 客户端 搭配 WebApiClientCore 玩耍服务调用

    使用Dapr 客户端 处理服务调用,需要遵循的他的模式,通常代码是这个样子的: var client = DaprClient.CreateInvokeHttpClient(appId: " ...

  9. .NET5控制台程序使用EF连接MYSQL

    .NET5控制台程序使用EF连接MYSQL 1.使用nuget下载: Microsoft.Extensions.Configuration.Json Pomelo.EntityFrameworkCor ...

  10. git 提代码时的相关命令,Mark一下

    以前用命令提代码都是复制粘贴,现在换了工作后,特别是回退代码的命令又忘了,去网上查了好久,心累.特此Mark一下 1. 打patch: 1.1 git diff >> ljh.patch ...