我是python的新手,正在学习创建一个具有两个条目和一个按钮的文本框。
我可以设置两个条目的位置,但是不能设置它们下方按钮的位置。
我尝试使用:
b.place(anchor=S, bordermode=OUTSIDE, height=5, width=10)
,但是按钮完全不动。它位于右下角。
以下是我的代码:
from tkinter import *
root = Tk()
l1 = Label(root, text="Variable_1")
l1.pack( side = LEFT)
e1 = Entry(root, bd = 5)
e1.pack(side = LEFT)
l2 = Label(root, text="Variable_2")
l2.pack( side = LEFT)
e2 = Entry(root, bd = 5)
e2.pack(side = LEFT)
l = Label(root)
def callback():
x = e1.get()
y = e2.get()
print(x)
print(y)
b = Button(root, text="OK", command=callback)
for widget in (e1, e2, l, b):
widget.pack()
如何将按钮放在文本框的底部中心?
还建议更改条目的位置吗?
谢谢!
答案 0 :(得分:1)
构建复杂布局的通常方法是将关联的小部件与框架组合在一起。在下面的示例中,我将条目归为一帧,将按钮归为另一帧。这样可以更轻松地控制垂直位置。
from tkinter import *
root = Tk()
top = Frame(root) # Create frame to hold entrys
top.pack() # Pack top frame
l1 = Label(top, text="Variable_1")
l1.pack(side=LEFT)
e1 = Entry(top, bd=5)
e1.pack(side=LEFT)
l2 = Label(top, text="Variable_2")
l2.pack(side=LEFT)
e2 = Entry(top, bd=5)
e2.pack(side=LEFT)
l = Label(root)
def callback():
x = e1.get()
y = e2.get()
print(x)
print(y)
bottom = Frame(root) # Create frame to hold button
bottom.pack() # Pack bottom frame
b = Button(bottom, text="OK", command=callback)
b.pack()
您还可以使用grid()
几何管理器。参见The Tkinter Grid Geometry Manager