#python #tkinter
Вопрос:
Я попытался центрировать кнопку и установить ее снизу, но когда я установил значение pady на 300, кнопка исчезла. Итак, вот мой вопрос: почему это происходит и как это исправить?
Вот мой код:
import tkinter as tk
root = tk.Tk()
root.title("Test")
root.minsize(1000, 600)
root.maxsize(1000, 600)
root.config(bg = "#524D4C")
frame = tk.LabelFrame(root, padx=20, pady=20)
rolls = tk.Button(frame, width=20, height=2)
sides = tk.Button(frame, width=20, height=2)
frame.pack(pady=300)
rolls.grid(row=0, column=0)
sides.grid(row=0, column=2)
root.mainloop()
Комментарии:
1. Вместо использования
minsize
иmaxsize
, почему бы не использовать.resizable(False, False)
с.geometry("1000x600")
? Такжеpady=300
помещает отступ в 300 пикселей выше и ниже рамки. Посколькуroot
высота 600, для рамы нет места. Попробуйте изменить его наpady=(300, 0)
Ответ №1:
Почему моя кнопка Tkinter исчезает, когда я пытаюсь сменить пэди?
Это связано с тем, что заполнение применяется как к верхней, так и к нижней части рамки. Вы заставили окно иметь высоту 600 пикселей, а 300*2-600, поэтому виджет должен уменьшиться до нулевой высоты, чтобы он поместился.