a demo project我正在尝试创建一些示例应用程序。
哪一行是一个标签然后输入输入框然后提交按钮。 然后第二行有另一个输入框。
我的问题是,当我增加第二行中输入框的宽度时,它会影响第一行样式。我不知道是什么问题。
import Tkinter
tk_obj = Tkinter.Tk()
tk_geo = tk_obj.geometry("1200x800")
Tkinter.Label(tk_obj, text='Enter query ').grid(row=1,column=1)
def callback():
print "hi"
E1 = Tkinter.Entry(tk_obj,bd=3,width=120)
E1.grid(row=1, column=2,ipady=3)
b = Tkinter.Button(tk_obj, text="Check", command=callback)
b.grid(row=1,column=3)
E2 = Tkinter.Entry(tk_obj,bd=3,width=100)
E2.grid(row=2,column=1,ipady=100)
tk_obj.mainloop()
答案 0 :(得分:1)
grid
方法将小部件放在他们所居住的单元格的中心。当您有两个不同大小的小部件共享行或列时,这意味着较小的小部件周围将有空白区域。要使第二个Entry
窗口小部件跨越前两列,请在columnspan=2
时使用grid()
。要在这两列中左对齐,请使用sticky='W'
:
E2.grid(row=2,column=1,ipady=100, columnspan=2, sticky='W')
然后,您可以调整Entry
小部件的width
属性,直到它看起来像您想要的那样。