我刚和tkinter一起工作了几个月。我用“框架”和“网格”编写了一些代码,没有问题。我刚开始尝试使用'Pack‘,并且遇到了一个错误: AttributeError:'Frame’object没有属性‘frame1 1’。
我做错什么了?
代码:
from tkinter import *
root=Tk()
root.title("Spin Box")
root.resizable(0,0)
frame1=Frame(root).frame1.pack(side=LEFT, fill=BOTH)
frame2=Frame(root).frame2.pack(side=RIGHT, fill=BOTH)
labe11=Label(frame1).labeL1.pack()
label2=Label(frame2, text="How many Ticket?", font="bold").label2.pack()
button1=Button(frame2, text="Get Tickets", font="bold", command=runcode).button1.pack()
button2=Button(frame2, text=" Close ", font="bold", command=subwin.destroy).button2.pack()
sp1=Spinbox(frame2, from_='1', to='5', bd=2, bg="white", state='readonly', relief=SUNKEN)
sp1.pack()
root.mainloop()回溯:
回溯(最近一次调用):File "./tkerr3.py",第7行,在frame1=Frame(root).frame1.pack(side=LEFT,fill=BOTH) AttributeError中:“Frame”对象没有属性'frame1‘
发布于 2017-01-24 03:44:13
对于如何调用pack,您似乎有错误的想法。
frame1 = Frame(root).frame1.pack(....)Frame对象没有属性frame1,而是希望在框架对象绑定到变量后在下一行调用pack。
frame1 = Frame(root)
frame1.pack(....)其他所有“打包”的小部件也是如此。
你也有一个错误等待在翅膀上。
labe11=Label(frame1).labeL1.pack()搞定
label1=Label(frame1)
label1.pack()这里的代码基本上是经过修正的版本,其中的回调被删除了。
from tkinter import *
def dummy(): pass
root=Tk()
root.title("Spin Box")
root.resizable(0,0)
frame1=Frame(root)
frame1.pack(side=LEFT, fill=BOTH)
frame2=Frame(root)
frame2.pack(side=RIGHT, fill=BOTH)
labe11=Label(frame1)
labe11.pack()
label2=Label(frame2, text="How many Ticket?", font="bold")
label2.pack()
button1=Button(frame2, text="Get Tickets", font="bold", command=dummy)
button1.pack()
button2=Button(frame2, text=" Close ", font="bold", command=dummy)
button2.pack()
sp1=Spinbox(frame2, from_='1', to='5', bd=2, bg="white", state='readonly', relief=SUNKEN)
sp1.pack()
root.mainloop()https://stackoverflow.com/questions/41819520
复制相似问题