python 批量添加的button 使用同一点击事件的方法


Posted in Python onJuly 17, 2019

python 批量添加的button 使用同一点击事件根据传递的参数进行区分。

def clear_text():

  print '我只是个清空而已'
def clear_text(index):

  print '我只是个清空而已' +str(index)
button = Button(framet_title, text='清空', command=clear_text)

这样去设置,单个按钮对应单个点击事件没有问题的

如果你是

for i in Range(10):

button = Button(framet_title, text='清空', command=clear_text_list(i))

这样搞的话 当你程序启动的时候 回调函数就会直接执行,点击按钮是没有任何反应的,使用 button.bind的方式几乎是一样的

这种写法 如果是在JAVA C HTML C++ 是没有任何问题的。请原谅 我是个做android开发 程序员。我最纳闷的是 我明明 是每个按钮都给他单独设置了 回调。为什么会提前回调,并且 点击的时候没有任何反应。

for i in Range(10):

button = Button(framet_title, text='清空', command=lambda:clear_text_list(i))

如果在 添加 lambda 程序启动是不会回调了。但是每次点击 获得的索引还是最后一个。

Google 了一圈 (说实话 我不知道用什么关键字。。。) http://stackoverflow.com/ 上面我尝试 python buttons command lambda

找到了 http://stackoverflow.com/questions/20596892/disabling-buttons-after-click-in-tkinter

正确的姿势是

for index in range(9): 
 n=letters[index]
 
 button = Button(root, bg="White", text=n, width=5, height=1, relief=GROOVE,
     command=lambda index=index, n=n: appear(index, n))

看到答案 之后 开始找答案对的理由吧 他是用lambda 表达式 做成了个 点击事件的集合 正好对应 button的集合。

以上这篇python 批量添加的button 使用同一点击事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
浅析Python中的for 循环
Jun 09 Python
Python遍历文件夹和读写文件的实现方法
May 10 Python
python使用xslt提取网页数据的方法
Feb 23 Python
python实现列表中由数值查到索引的方法
Jun 27 Python
python中的常量和变量代码详解
Jul 25 Python
python 利用pandas将arff文件转csv文件的方法
Feb 12 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
Jun 05 Python
Python实现计算文件MD5和SHA1的方法示例
Jun 11 Python
python tkinter图形界面代码统计工具
Sep 18 Python
python开根号实例讲解
Aug 30 Python
Python控制台输出俄罗斯方块移动和旋转功能
Apr 18 Python
一文搞懂python异常处理、模块与包
Jun 26 Python
python实时检测键盘输入函数的示例
Jul 17 #Python
python  文件的基本操作 菜中菜功能的实例代码
Jul 17 #Python
python对绑定事件的鼠标、按键的判断实例
Jul 17 #Python
Django model update的多种用法介绍
Mar 28 #Python
Django model select的多种用法详解
Jul 16 #Python
python删除文件夹下相同文件和无法打开的图片
Jul 16 #Python
Python split() 函数拆分字符串将字符串转化为列的方法
Jul 16 #Python
You might like
我的论坛源代码(五)
2006/10/09 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
关于laravel框架中的常用目录路径函数
2019/10/23 PHP
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
js实现在文本框光标处添加字符的方法介绍
2012/11/24 Javascript
js借助ActiveXObject实现创建文件
2013/09/29 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
2013/11/08 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
javascript实现网站加入收藏功能
2015/12/16 Javascript
jquery.validate使用详解
2016/06/02 Javascript
checkbox 选中一个另一个checkbox也会选中的实现代码
2016/07/09 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
2018/11/18 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
2019/09/20 Javascript
微信小程序实现签字功能
2019/12/23 Javascript
vue实现匀速轮播效果
2020/06/29 Javascript
JavaScript undefined及null区别实例解析
2020/07/21 Javascript
[08:08]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY
2014/06/25 DOTA
python复制与引用用法分析
2015/04/08 Python
使用wxPython获取系统剪贴板中的数据的教程
2015/05/06 Python
Python中模块pymysql查询结果后如何获取字段列表
2017/06/05 Python
python 多维切片之冒号和三个点的用法介绍
2018/04/19 Python
python 2.7.13 安装配置方法图文教程
2018/09/18 Python
Python3安装psycopy2以及遇到问题解决方法
2019/07/03 Python
django项目中新增app的2种实现方法
2020/04/01 Python
jupyter 中文乱码设置编码格式 避免控制台输出的解决
2020/04/20 Python
Python2.x与3​​.x版本有哪些区别
2020/07/09 Python
求职意向书范文
2014/04/01 职场文书
安全施工责任书
2014/08/25 职场文书
2014年教师节活动总结
2014/08/29 职场文书
拾金不昧表扬信怎么写
2015/05/04 职场文书
Python如何加载模型并查看网络
2022/07/15 Python