跨两列的小部件随标签的更改而移动

时间:2020-06-05 19:05:38

标签: python python-3.x tkinter

我有一些代码可以生成不同长度的密码,并在按钮上显示该密码以生成密码。问题在于,即使这两个小部件都跨越2列,并且我称为pack_propogate(0),当我生成不同长度的密码短语时,这些小部件也会左右左右移动。

对于整个上下文,这是我到目前为止的代码:

from tkinter import *
from tkinter import ttk, Tk
import ctypes
from diceware import get_passphrase

user32 = ctypes.windll.user32
user32.SetProcessDPIAware()

root = Tk()
root.title('Diceware')

mainframe = ttk.Frame(root)
mainframe.grid(column=0, row=0)
mainframe.pack_propagate(0)

root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)

passphrase = StringVar()
passphrase.set('passphrase')


def generate(*args):
    passphrase.set(get_passphrase())


output_label = ttk.Label(mainframe, textvariable=passphrase, justify='center').grid(column=0, columnspan=2, row=0)
generate_button = ttk.Button(mainframe, text='Generate', command=generate).grid(column=0, columnspan=2, row=1)

pad_x = 5
pad_y = 5
for child in mainframe.winfo_children():
    child.grid_configure(padx=pad_x, pady=pad_y)

root.geometry('400x100')
root.resizable(0,0)

root.bind("<Return>", generate)

root.mainloop()

0 个答案:

没有答案
相关问题