我创建了一个带有两个按钮的窗口,并设置了两个按钮的填充。
from tkinter import *
window = Tk()
Button(window, text="Click Me").pack(padx=10, pady=10)
Button(window, text="Click Me").pack(padx=10, pady=10)
window.mainloop()
我想从padx
中移除pady
和pack()
参数并获得相同的结果。我怎么能这样做?
答案 0 :(得分:6)
如果窗口小部件位于框架或主tk
窗口中,您可以执行以下操作:
for child in frame_name.winfo_children():
child.grid_configure(padx=10, pady=10)
答案 1 :(得分:2)
你做不到。但是,您可以将值放在变量中,这样如果您想稍后更改该值,则只需在一个位置更改它。
padx = 10
pady = 10
Button(...).pack(padx=padx, pady=pady)
几乎可以肯定有更好的方法来解决您的实际问题,但对于问题中的人为设置示例,您可以做的最好的事情是在每次调用{{1}时使用padx
和pady
参数}}
答案 2 :(得分:0)
def pack_configure_recursive(widget, **kwargs):
stack = list(widget.winfo_children())
while stack:
descendent = stack.pop()
stack.extend(descendent.winfo_children())
descendent.pack_configure(**kwargs)
...
pack_configure_recursive(window, padx=10, pady=10)