1

好的,所以我使用 Python 的 Tkinter 模块,我想要 5 个输入框,每个输入框都是一个变量,组合成一个变量,并用作 Office 自动安装程序的序列号(在其他软件中,用于中型办公室的安装脚本)。

除了让您了解内容之外,这些都不是真正相关的。

我试图将所有的输入框放在一个小空间中,最好是一列或两列(我目前使用 4-6 列,我可以检查)。

Tkinter 有可能吗?

到目前为止,这是脚本这一部分的代码:

Label(app, text="Office Serial Key").grid(row=3, column=0)
entries = ["e1", "e2", "e3", "e4", "e5"]
colnum = 1
for item in entries:
    item = Entry(app, width=10)
    item.grid(row=3, column=colnum)
    colnum = colnum + 1

我想看起来更专业/像 Microsoft 安装。

4

1 回答 1

0

您可以做很多事情来完全按照您想要的方式进行布局。我认为完成这样的事情的方法是将您的Label+ Entrys 放入另一个Frame中,然后当您对其进行网格化时Frame,使用columnspan关键字设置它应该相对于“ app”中的其他小部件的宽度。

( http://effbot.org/tkinterbook/grid.htm )

这是一个愚蠢的例子:

import Tkinter as tk

root=tk.Tk()

for i in range(7):
    tk.Label(root,text='%d'%i,width=12).grid(row=0,column=i)

myframe=tk.Frame(root)

tk.Label(myframe, text="Office Serial Key").grid(row=0, column=0)
entries = ["e1", "e2", "e3", "e4", "e5"]
for column,item in enumerate(entries,start=1):
    item = tk.Entry(myframe, width=10)
    item.grid(row=0, column=column)

myframe.grid(row=1,column=0,columnspan=3)
root.mainloop()
于 2012-06-06T12:40:36.353 回答