Не удается разместить кнопки на вкладках tkinter

#python #tkinter

#python #tkinter

Вопрос:

 import tkinter as tk
from tkinter import *
from tkinter import ttk

# 1440x720
#1090x568'


root = tk.Tk()
root.geometry('1152x576')
root.title("TimeTable")
#root.resizable(False, False)



background_image = tk.PhotoImage(file='image/background.png')

my_notebook = ttk.Notebook(root)
my_notebook.pack()

main_menu = ttk.Frame(my_notebook, width=1152, height=576)
main_menu.pack(fill="both", expand=1)


my_notebook.add(main_menu, text="Main")

background_label = tk.Label(main_menu, image=background_image).place(relwidth=1, relheight=1)
hide_button = tk.Button(main_menu, text="Hide")
hide_button.grid(row=1, column=1)```


  

Я запускаю код, я вижу это.

введите описание изображения здесь

Итак, как я могу это исправить? Почему это происходит?

Спасибо

Комментарии:

1. Непонятно, что вы хотите «исправить». Вы показали нам, что вы получаете, когда запускаете код, но не объяснили, чем он отличается от того, что вы ожидаете. Похоже, он ведет себя так, как было задумано.

2. Предполагается, что в рамке отображается изображение, а кнопка

3. Вы пробовали расширить блокнот, чтобы заполнить окно?

Ответ №1:

Когда вы помещаете виджет во фрейм main_menu , фрейм сжимается, чтобы содержать только виджет дополнение, если таковое имеется. Вы можете предотвратить это, установив grid_propagate значение False :

 main_menu = ttk.Frame(my_notebook, width=1152, height=576)
main_menu.pack(fill="both", expand=1)
main_menu.grid_propagate(False)  # Prevents contained widgets to affect size