Я создаю приложение с помощью Tkinter, и я пытаюсь эффективно настроить все с помощью ttk.Style().configure()
и создать новые или изменить существующие стили. Я пытался настроить заполнение для ttk.Frame()
- .configure()
, но, похоже, это не работает.
Затем я попытался добавить аргумент заполнения в конструктор ttk.Frame()
, и он отлично работает. Думаю, в обоих случаях это один и тот же вариант.
Почему ttk.Style.configure()
не удается добавить отступы? Есть ли еще один элемент, который нужно изменить? Я знаю, что иногда нужно изменить несколько элементов, чтобы получить результат. Но опять же, простой конструктор ttk.Frame()
выполняет свою работу, как и должен.
Вот код, который работает и добавляет отступы.
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("200x200")
frame = ttk.Frame(root, padding=10)
frame.pack(fill='both', expand=True)
button = ttk.Button(frame, text='press')
button.grid()
root.mainloop()
И этот не добавляет отступов, даже хотя стиль был изменен и установлен позже.
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("200x200")
style = ttk.Style()
style.configure('new.TFrame', padding=10)
frame = ttk.Frame(root, style='new.TFrame')
frame.pack(fill='both', expand=True)
button = ttk.Button(frame, text='press')
button.grid()
root.mainloop()