在tkinter python的输入框旁边打包标签

时间:2013-08-31 17:10:32

标签: python tkinter label pack tkinter-entry

我有一个窗口,提示用户输入其日志文件的目录。 但是,我的标签似乎打包在我的输入框之上。如何将它们并排包装?

labelText=StringVar()

labelText.set("Enter directory of log files")

labelDir=Label(app,textvariable=labelText,height=4)

labelDir.pack()

directory=StringVar(None)

dirname=Entry(app,textvariable=directory,width=50)

dirname.pack()

2 个答案:

答案 0 :(得分:4)

是的,您需要将side选项设置为“left”。见下文:

from Tkinter import Tk, Label, Entry, StringVar

app = Tk()

labelText=StringVar()
labelText.set("Enter directory of log files")
labelDir=Label(app, textvariable=labelText, height=4)
labelDir.pack(side="left")

directory=StringVar(None)
dirname=Entry(app,textvariable=directory,width=50)
dirname.pack(side="left")

app.mainloop()

示例:

sample

答案 1 :(得分:1)

您可以随时切换到使用' .grid'代替。

使用您的代码:

from Tkinter import Tk, Label, Entry, StringVar

app = Tk()

labelText=StringVar()
labelText.set("Enter directory of log files")
labelDir=Label(app, textvariable=labelText, height=4)
labelDir.grid(row=1,column=1)

directory=StringVar(None)
dirname=Entry(app,textvariable=directory,width=50)
dirname.grid(row=1,column=2)

app.mainloop()

代码运行: https://gyazo.com/7c78e6f3d7c8fe9233f150072c44a0d1