Python 如何在Tkinter中定位?
我是Tkinter的新手,我想创建一个“表单”(我真的不知道如何调用它),它可以写入数据库。我受够了,但是因为布局的原因我被搞糊涂了 我有一个代码,它构成了“表单”: 它创建了如下内容: 我想要像这样的东西。但我欣赏每一个想法:Python 如何在Tkinter中定位?,python,tkinter,Python,Tkinter,我是Tkinter的新手,我想创建一个“表单”(我真的不知道如何调用它),它可以写入数据库。我受够了,但是因为布局的原因我被搞糊涂了 我有一个代码,它构成了“表单”: 它创建了如下内容: 我想要像这样的东西。但我欣赏每一个想法: 首先,不要害怕在谷歌上搜索,尤其是在谷歌上搜索,然后试着理解为什么你会得到你所得到的 由于pack逻辑的相关性,对于初学者来说,控制小部件的水平和垂直定位不是一件容易的事情。因此,请记住“分而治之”的原则,并将您的程序布局视为一组块,在其中的任何一个块中,我们将小部件
首先,不要害怕在谷歌上搜索,尤其是在谷歌上搜索,然后试着理解为什么你会得到你所得到的 由于
pack
逻辑的相关性,对于初学者来说,控制小部件的水平和垂直定位不是一件容易的事情。因此,请记住“分而治之”的原则,并将您的程序布局视为一组块,在其中的任何一个块中,我们将小部件按水平顺序或垂直顺序放置,而不进行混合
考虑您的布局,它看起来像:
如果每个红色块是一个带有一个下单的框架
小部件+根
(或“主”框架
,请随意创建一个)
要表示类似的内容,请尝试以下代码段:
try:
import tkinter as tk
except ImportError:
import Tkinter as tk
root = tk.Tk()
frame1 = tk.Frame()
frame1.pack()
for _ in range(2):
i_frame = tk.Frame(frame1)
label = tk.Label(i_frame, text='Sample%d' % _)
label.pack(padx=200)
entry = tk.Entry(i_frame)
entry.pack(padx=200)
i_frame.pack(side='left', ipady=25)
frame2 = tk.Frame()
frame2.pack()
label = tk.Label(frame2, text='Sample3')
label.pack()
entry = tk.Entry(frame2)
entry.pack()
label = tk.Label(frame2, text='Title', width=15)
label.pack()
txt = tk.Text(frame2)
txt.pack()
root.mainloop()
还有,记住,有个经理!使用此管理器,您可以将布局视为一个表,所以也可以尝试一下 我不确定,你知道“分而治之”的真正含义,但我感谢你的回应。我可以用它解决我的问题。感谢电网经理,我以前从未听说过。
try:
import tkinter as tk
except ImportError:
import Tkinter as tk
root = tk.Tk()
frame1 = tk.Frame()
frame1.pack()
for _ in range(2):
i_frame = tk.Frame(frame1)
label = tk.Label(i_frame, text='Sample%d' % _)
label.pack(padx=200)
entry = tk.Entry(i_frame)
entry.pack(padx=200)
i_frame.pack(side='left', ipady=25)
frame2 = tk.Frame()
frame2.pack()
label = tk.Label(frame2, text='Sample3')
label.pack()
entry = tk.Entry(frame2)
entry.pack()
label = tk.Label(frame2, text='Title', width=15)
label.pack()
txt = tk.Text(frame2)
txt.pack()
root.mainloop()