Skip to main content
 首页 » 编程设计

python之我如何堆叠按钮而不是在 Tkinter 中将它们排队

2025年05月04日14Renyi-Fan

目前我显示了 3 个基本按钮:

from tkinter import * 
 
root = Tk() 
 
topFrame = Frame(root) 
topFrame.pack(side=TOP) 
leftFrame = Frame(root) 
leftFrame.pack(side=LEFT) 
botFrame = Frame(root) 
botFrame.pack(side=BOTTOM) 
 
button1 = Button(leftFrame, text="Button 1", fg="Black") 
button2 = Button(leftFrame, text="Button 2", fg="Black") 
button3 = Button(leftFrame, text="Button 3", fg="Black") 
 
button1.pack(side=LEFT) 
button2.pack(side=LEFT) 
button3.pack(side=LEFT) 
 
root.mainloop() 

目前这 3 个按钮会粘在窗口的左框架上,但随后会并排排列,而不是一个堆叠在另一个之上,我该如何解决这个问题?

请您参考如下方法:

您明确告诉他们要与 side=LEFT 并排。您需要 side=TOP 以便将它们放置在框架中空白区域的顶部。

button1.pack(side=TOP) 
button2.pack(side=TOP) 
button3.pack(side=TOP) 

当您使用 pack 时,值 TOP、LEFT、RIGHT 和 BOTTOM 告诉小部件它们应该占据剩余空间的哪一侧。第一次使用 LEFT 时,它将为小部件保留整个框架的左侧。下次您使用 LEFT 时,它指的是小部件中剩余的空间,不包括 左边缘,因为其中已经有一个小部件。最终效果是 LEFT 使小部件从左到右排列,RIGHT 使它们从右到左排列,依此类推。