Похоже, вы не настроили фоновую рамку для правильного заполнения окна.
Если вы используете pack
, убедитесь, что вы использовали опции expand
и fill
:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("200x200")
ttk.Style().configure('TFrame', background='#b22222')
backgroundFrame = ttk.Frame(root)
backgroundFrame.pack(fill="both", expand=True)
root.mainloop()
Если вы используете grid
, убедитесь, что в строке и столбце фрейма указан вес, и убедитесь, что вы используете атрибут sticky
для фрейма:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("200x200")
ttk.Style().configure('TFrame', background='#b22222')
backgroundFrame = ttk.Frame(root)
root.grid_rowconfigure(0, weight=1)
root.grid_columnconfigure(0, weight=1)
backgroundFrame.grid(row=0, column=0, sticky="nsew")
root.mainloop()
Если вы используете place
, используйте относительную ширину и высоту:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
root.geometry("200x200")
ttk.Style().configure('TFrame', background='#b22222')
backgroundFrame = ttk.Frame(root)
backgroundFrame.place(x=0, y=0, relwidth=1, relheight=1)
root.mainloop()