callback-python tkinter 组件config报错

问题描述

python tkinter 组件config报错
 import sys
import time
from tkinter import *

clock_lab = None

def refresh_time():
    clock_lab.config(text = time.localtime(time.time()))    

myclock = Tk()
myclock.title("myclock")
myclock.geometry("400x200")
clock_lab = Label(myclock,text= time.localtime(time.time())).pack()
clock_bt = Button(myclock, text="clock", command =lambda:refresh_time()).pack()

myclock.mainloop()

按过按钮之后报错,有没有人知道是怎么回事

Exception in Tkinter callback
Traceback (most recent call last):
File "C:Python34lib kinter__init__.py", line 1533, in call
return self.func(*args)
File "F:/code/python/clock.py", line 14, in
clock_bt = Button(myclock, text="clock", command =lambda:refresh_time()).pack()
File "F:/code/python/clock.py", line 8, in refresh_time
clock_lab.config(text = time.localtime(time.time()))
AttributeError: 'NoneType' object has no attribute 'config'

解决方案

import sys
import time
from tkinter import *

clock_lab = None

def refresh_time():
clock_lab.config(text = time.localtime(time.time()))

myclock = Tk()
myclock.title("myclock")
myclock.geometry("400x200")
clock_lab = Label(myclock,text= time.localtime(time.time()))
clock_lab.pack()
clock_bt = Button(myclock, text="clock", command =lambda:refresh_time())
clock_bt.pack()

myclock.mainloop()

把pack()单独调用就好了,有没有大神解释一下是怎么回事啊

解决方案二:

前者是pack返回对象,而你后面的做法是先得到Label对象。所有应该是第二种方法对。

解决方案三:

Python Tkinter PanedWindow 控件

时间: 2024-11-08 18:16:05

callback-python tkinter 组件config报错的相关文章

pyffmpeg安装-python安装pyffmpeg,cython报错

问题描述 python安装pyffmpeg,cython报错 问题是这样的,最近在装python版的ffmpeg模块pyffmpeg,执行python setup.py install后,报错如下: from Cython.Distutils import build_ext ,ImportError: No module named Cython.Distutils ,发现可能缺少Cython模块的安装,于是又执行了下面的命令: pip install cython 结果报错: buildin

vc++-新人求帮助:VC6 调用delphi编写的com组件函数 报错

问题描述 新人求帮助:VC6 调用delphi编写的com组件函数 报错 代码: IElectric *ptr = NULL; CLSID clsid; HRESULT hr = CLSIDFromString((LPOLESTR)L"{18F86FFB-158B-42D6-9203-C4197A4E76FE}",&clsid); hr = CoInitialize(0); if(!SUCCEEDED(hr)) { int nCode = GetLastError(); } h

操作系统-windows server 2003系统组件运行报错?

问题描述 windows server 2003系统组件运行报错? 错误签名 szAppName : DLC.exe szAppVer : 0.0.0.0 szModName : ntdll.dll szModVer : 5.2.3790.5583 offset : 0004cca2 报告详细信息 这个错误报告包括:问题出现时 DLC.exe 的现状信息:正在使用的操作系统版本及计算机硬 件,以及您的计算机的Internet 协议(IP)地址. 求救大神怎么解决? 解决方案 唯一的建议就是和dl

python 中文插入mysql报错

问题描述 python 中文插入mysql报错 哪位大神帮忙看看这个是什么问题? python 中文插入mysql报错: content= [1165630L, '13940546367', 361L, None, Decimal('449.00'), Decimal('0.00'), 'xd5xd4xd4xa8xd5', 'xc1xc9xc4xfexcaxa1', 'xc9xf2xd1xf4xcaxd0', 'xbaxcdxc6xbdxc7xf8', 'xb6xfexbbxb7xd2xd4xc

linux下运行python导入包cx_oracle报错ELFCLASS32

问题描述 linux下运行python导入包cx_oracle报错ELFCLASS32 linux运行python导入oracle包报错ELFCLASS32,linux平台是64bit,python也是64bitcx_Oracle网上下载应该不区分多少位吧?问题:这个报错是如何解决?请用linux和python的大神进 解决方案 你要看下 cx_oracle 是不是支持2.6.6版本,有可能不支持. 解决方案二: 参考:http://www.educity.cn/wenda/288024.htm

爬虫-python 2.7.6报错SyntaxError: invalid syntax

问题描述 python 2.7.6报错SyntaxError: invalid syntax 在学习爬虫的时候遇到了点问题: 'User-Agent':'Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/34.0.1847.116 Chrome/34.0.1847.116 Safari/537.36' 这一行老是报错SyntaxError: invalid syntax hea

Python MySQLdb 导入libmysqlclient报错

摘要 flask开发相关功能,在本地测试没有问题,但是放到线上环境却报错 ImportError: libmysqlclient.so.16: cannot open shared object file: No such file or directory 检查了下发现在 /usr/lib64/mysql 下面存在libmysqlclient.so.18文件(uanme -a 确认是64位系统) 解决过程 发现问题,不是自己遇到的也没有解决办法,那就网上查呗,发现大家的思路: copy /us

Ubuntu中安装Python程序后系统报错的解决方法

Python是一种面向对象.直译式计算机程序设计语言,也是一种http://www.aliyun.com/zixun/aggregation/17547.html">功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行.目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多. 虽然Python可能被粗略地分类为"脚本语言"(script lan

ajax-关于callback(eval('('+xhr.responseText+')'));IE报错的问题

问题描述 关于callback(eval('('+xhr.responseText+')'));IE报错的问题 //这是index.js的文件 (function() { var li = function(id) { return document.getElementById(id); }; li.init = function() {// li下的init方法 // 创建一个ajax对象并返回 try { return new XMLHttpRequest(); } catch (e) {