Придание размера рамке

#python #python-3.x #user-interface #tkinter

Вопрос:

Можно ли указать размер рамки в окне tkinter.

Что я пытаюсь сделать, так это то, что у меня есть два кадра внутри ОСНОВНОГО кадра, и мне нужно, чтобы они занимали доступное пространство в соотношении 7:3.

Я не смог найти решение своей проблемы.

Мой ожидаемый результат таков.введите описание изображения здесь

  1. Какой менеджер макетов предоставит мне эту функцию
  2. Будет ли это ограничивать какие-либо другие функции
  3. Будет ли он изменять свой размер, если размер окна будет изменен

Ответ №1:

Одним из способов было бы использовать place с relx , rely , relheight и relwidth .

Вот минимальный пример:

 import tkinter as tk

root = tk.Tk()

frame1 = tk.Frame(root, bg='green')
frame1.place(relx=0.0, relheight=1, relwidth=0.7)

#tk.Label(frame1, text='70%', bg='red').pack(expand=1, fill='both')

frame2 = tk.Frame(root, bg='blue')
frame2.place(relx=0.7, relheight=1, relwidth=0.3)

#tk.Label(frame2, text='30%', bg='yellow').pack(expand=1, fill='both')

root.mainloop()
 

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

1. Это сработало идеально, как и ожидалось, но для получения знаний это можно сделать с любым другим менеджером.

2. @EzyGrip Вы, вероятно, можете, но я не думаю, что вы получите этот контроль при использовании других менеджеров компоновки.