python kivy事件_python – Kivy:使用on_press事件更改屏幕管理器中的屏幕
实现此目的的一种简单方法是定义您自己的按钮子类:
class ScreenButton(Button):
screenmanager = ObjectProperty()
def on_press(self, *args):
super(ScreenButton, self).on_press(*args)
self.screenmanager.current = 'whatever'
按下按钮时会自动调用on_press方法,因此将更改screenmanager的当前属性.
然后你可以有类似的代码:
sm = ScreenManager()
sc1 = Screen(name='firstscreen')
sc1.add_widget(ScreenButton(screenmanager=sm))
sc2 = Screen(name='whatever')
sc2.add_widget(Label(text='another screen'))
sm.add_widget(sc1)
sm.add_widget(sc2)
单击该按钮应根据需要切换屏幕.
另一种方式(可能是kv语言实际上是如何做的)将是手动使用bind方法.
def switching_function(*args):
some_screen_manager.current = 'whatever'
some_button.bind(on_press=switching_function)
这意味着只要按下some_button就会调用switching_function.当然,关于如何以及何时定义函数,这里有很多灵活性,因此(例如)你可以做一些更通用的事情,比如将screenmanager作为函数的第一个参数传递.
我没有测试这个代码,它不是一个完整的应用程序,但希望意义很明确.无论哪种方法都可以正常工作,您可以选择最合理的方式.我稍后可能会构建一个更完整的例子.
python kivy事件_python – Kivy:使用on_press事件更改屏幕管理器中的屏幕相关推荐
- python with关键字_python中用with关键字来实现上下文管理器.
例子 with open(r'somefileName') as somefile: for line in somefile: print line with 语句的语法 with [as ]: 什 ...
- python程序化 k线指定时间更新_Python之路 14 K线时间序列管理器
在上一章中介绍了如何通过实时行情推送的Tick数据合成1分钟K线,并且如何通过1分钟K线来合成更大周期的K线.本章主要介绍如何将K线通过numpy缓存到Array,形成时间序列,并且同时生成一些技术指 ...
- win mysql 错误日志_关于事件管理器中“应用程序”中显示windows error reporting的输入法报错日志...
错误存储段 ,类型 0 事件名称: IMECustomerEvent 响应: 不可用 Cab Id: 0 问题签名: P1: IPX Assertion P2: 0CHS P3: ChsIME.exe ...
- 写入文件python并用序号_Python和excel表合成示例:向表中添加序列号,向表的现有内容添加索引,与,Excel,表格,综合,实例,给,增加,序号,对,已有...
Python 与 Excel 表格综合实例(一):给表格增加序号,根据表格已有内容增加索引 前言: 前面我们花了6篇博客,把Python的xlwt与xlrd两个第三方模块对Excel表格的基础操作讲完 ...
- python系列教程_python基础学习系列教程2-进阶之路中绕不开的知识点。
本文是在上一篇的基础上编写的,若要查看见:雨滴测试:python基础系列教程1-可能是你见过的最通俗易懂的教程zhuanlan.zhihu.com 五. python函数 所谓的函数,就是具有特定功 ...
- python listbox大小_python 3.5 tkinter.listbox更改大小
我对代码做了一些修改;这可能不是你想要的,但你应该觉得它有帮助. 列表框宽度和高度选项不是像素测量;它们用字符指定尺寸,所以height=12使得列表框12的文本行高,并且width=40使得列表框4 ...
- python中奖号_Python输入数字并从预定义的lis中选择中奖号码
我昨天才开始学习Python,这是我第一次接触编程语言,我注意到我通过做一些事情比仅仅阅读来学习更好,所以我给自己分配了不同的任务,并不断地敲打自己的脑袋,直到我成功地完成它们. 关于我的问题,我相信 ...
- html设置了标签但是定义不了,在HTML标签管理器中设置不带元素ID的HTML中的事件...
这取决于你想要采取的路线.但是,无论路线如何,您绝对需要标识表单和/或提交按钮的内容.它不需要是一个ID,但它是理想的,如果有一个唯一的包装类或ID. 您可以跟踪点击提交按钮,但是,您的号码不会完全准 ...
- win server 2003 事件查看器中的事件ID
PS:最近管理服务器, 要查看事件处理器,特记下ID,以方便日后查看! 一.帐户登录事件 下面显示了由"审核帐户登录事件"安全模板设置所生成的安全事件. 672:已成功颁发和验 ...
最新文章
- Linux命令scp用于远程文件的拷贝(上传和下载)
- svn教程----TortoiseSVN常用操作
- js 调用后台代码(比较实用,好记)
- OC中的几种延迟执行方式
- Jmeter3.1官方自带的HTML图形测试报告 + 汉化
- SQLSERVER2005 收缩日志
- POJ NOI MATH-7656 李白的酒
- ubuntu gif 制作工具
- 信息差、技能差、资源差、认知差
- 模拟题 czy的后宫
- 区块链随想录——一种设想中的公链架构
- GPU驱动、CUDA和cuDNN之间的版本匹配与下载
- Eolink 征文活动- -专为开发者设计的一款国产免费 API 协作平台
- 程序人生:hello程序的P2P
- 自定义百度地图InfoWindow样式
- 阿里云课堂-day06
- java欧元货币输出符号位置_java – 使用unicode显示欧元符号并将字符更改为大写...
- 阿里代码规范检测工具-idea
- yarn 系统找不到指定的路径
- 如何设置卫星系统和频点
热门文章
- Ubuntu系统键盘背光灯不亮解决办法
- 移动端-K线图-开发
- 通过读取csv/xmladd()reduct()数据并使用allure展示测试报告
- ceph 数据恢复机制_ceph数据恢复(成功率相当高)
- #一日一图#一周汇总
- java基本微信小程序的快递代收派送系统 uniapp小程序
- python中column什么意思_DataFrame属性和column有什么区别
- HTML+CSS美食静态网页设计——简单牛排美食餐饮(9个页面)公司网站模板企业网站实现...
- zblog忘记后台密码怎么办 官方解决方案
- 【游记】NOI2021