【发布时间】:2014-04-21 13:44:40
【问题描述】:
我是 Python 和 Tkinter 的新手。
我正在练习使用框架、画布和滚动条,但遇到了一个问题:
我有一个 Canvas 作为我的 Master 和一个 Frame,它位于 Canvas 的特定坐标上。
我会将按钮和标签放在框架中,所以我选择不使用列表框。
现在,我如何在框架上制作滚动条,如果框架中的标签超过5个(每个标签都垂直放置),那么滚动条就会出现?
这里是示例代码:
from Tkinter import *
class GUI():
def __init__(self):
self.namelist = ["Mark","Anna","Jason","Lenna","Leo","Zucharich","Robinson","AReallyLongNameThatMightExist"]
self.canvas = Canvas(width=1200,height=700)
self.canvas.pack(expand=YES,fill=BOTH)
def Friends(self):
controlframe = Frame(self.canvas)
controlframe.place(x=600,y=300)
#Frame for showing names of friends
for x in self.namelist:
frame = Frame(controlframe)
frame.pack()
Name = Label(frame,text="%s "%x).pack(side=LEFT)
chatButton = Button(frame,text="Chat").pack(side=LEFT)
delButton = Button(frame,text="Delete").pack(side=LEFT)
setcloseButton = Button(frame,text="Set Close").pack(side=LEFT)
setgroupButton = Button(frame,text="Set Group").pack(side=LEFT)
mainloop()
GUI = GUI()
GUI.Friends()
【问题讨论】:
标签: python python-2.7 canvas tkinter scrollbar