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人人网登录应用实例
Sep 26 Python
Python使用MySQLdb for Python操作数据库教程
Oct 11 Python
简单讲解Python编程中namedtuple类的用法
Jun 21 Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 Python
Tensorflow环境搭建的方法步骤
Feb 07 Python
详解Python如何生成词云的方法
Jun 01 Python
python实现从pdf文件中提取文本,并自动翻译的方法
Nov 28 Python
python对视频画框标记后保存的方法
Dec 07 Python
Python 爬取必应壁纸的实例讲解
Feb 24 Python
使用jupyter notebook运行python和R的步骤
Aug 13 Python
python爬虫快速响应服务器的做法
Nov 24 Python
Python查找算法的实现 (线性、二分,分块、插值查找算法)
Apr 24 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
PHP循环获取GET和POST值的代码
2008/04/09 PHP
php简单实现查询数据库返回json数据
2015/04/16 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
PHP耦合设计模式实例分析
2018/08/08 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
jquery ready()的几种实现方法小结
2010/06/18 Javascript
基于jQuery架构javascript基础体系
2011/01/01 Javascript
js中Image对象以及对其预加载处理示例
2013/11/20 Javascript
Javascript的&&和||的另类用法
2014/07/23 Javascript
JavaScript sub方法入门实例(把字符串显示为下标)
2014/10/17 Javascript
javascript 实现 原路返回
2015/01/21 Javascript
Bootstrap前端开发案例一
2016/06/17 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
BootStrap表单验证实例代码
2017/01/13 Javascript
详解react-router如何实现按需加载
2017/06/15 Javascript
vue2.0+vue-dplayer实现hls播放的示例
2018/03/02 Javascript
小程序清理本地缓存的方法
2018/08/17 Javascript
了解JavaScript中let语句
2019/05/30 Javascript
ES2020让代码更优美的运算符 (?.) (??)
2021/01/04 Javascript
Python使用pygame模块编写俄罗斯方块游戏的代码实例
2015/12/08 Python
使用 Python 处理 JSON 格式的数据
2019/07/22 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
使用python实现飞机大战游戏
2020/03/23 Python
python与pycharm有何区别
2020/07/01 Python
Python selenium模块实现定位过程解析
2020/07/09 Python
css3实现元素环绕中心点布局的方法示例
2019/01/15 HTML / CSS
跨域修改iframe页面内容详解
2019/10/31 HTML / CSS
2014年幼儿园保育工作总结
2014/12/02 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
趣味运动会口号
2015/12/24 职场文书
李白经典诗之一:全文无一“月”字,却句句有月
2019/07/12 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python
python标准库ElementTree处理xml
2022/05/20 Python