=====метод pack ()=====
Этот упаковщик организует виджеты в блоки перед размещением их в родительском виджете.
====Синтаксис:====
widget.pack( pack_options )
Вот список возможных вариантов -
* **expand** - При значении true виджет расширяется, заполняя любое пространство, не используемое в родительском виджете.
* **fill** - Определяет, заполняет ли виджет какое-либо дополнительное пространство, выделенное ему упаковщиком, или сохраняет свои собственные минимальные размеры: НЕТ (по умолчанию), X (заполнение только по горизонтали), Y (заполнение только по вертикали) или ОБА (заполнение как по горизонтали, так и по вертикали).
* **side** - определяет с какой стороны окна отрисовывать виджет
====Примеры:====
from tkinter import *
root = Tk()
frame = Frame(root)
frame.pack()
bottomframe = Frame(root)
bottomframe.pack( side = BOTTOM )
redbutton = Button(frame, text = "Red", fg = "red")
redbutton.pack( side = LEFT)
greenbutton = Button(frame, text = "Brown", fg = "brown")
greenbutton.pack( side = LEFT )
bluebutton = Button(frame, text = "Blue", fg = "blue")
bluebutton.pack( side = LEFT )
blackbutton = Button(bottomframe, text = "Black", fg = "black")
blackbutton.pack( side = BOTTOM)
root.mainloop()
Когда приведенный выше код выполняется, он дает следующий результат -
{{ :python:оконное_приложение:tkinter:geometry_management:tkframe.jpg?100 |}}
===side -расстановка контейнеров===
from tkinter import *
root = Tk()
root.geometry("600x400")
l1 = Label(root, text="1", font="15", fg="#fff", bg="#3498db" , width=8, height=4).pack(side=TOP)
l2 = Label(root, text="2", font="15", fg="#fff", bg="#ff0000" , width=8, height=4).pack(side=RIGHT)
l3 = Label(root, text="3", font="15", fg="#fff", bg="#5252aa" , width=8, height=4).pack(side=BOTTOM)
l4 = Label(root, text="4", font="15", fg="#fff", bg="#6daf52" , width=8, height=4).pack(side=LEFT)
root.mainloop()
{{ :python:оконное_приложение:tkinter:упаковщики:pack3.png?400 |}}
===fill и expand (расстянуть)===
from tkinter import *
root = Tk()
root.geometry("600x400")
l1 = Label(root, text="1", font="15", fg="#fff", bg="#3498db" , width=8, height=4).pack(expand=1, fill= BOTH)
root.mainloop()
{{ :python:оконное_приложение:tkinter:упаковщики:pack1.png?400 |}}
===anchor - относительное смещение===
from tkinter import *
root = Tk()
root.geometry("600x400")
l1 = Label(root, text="1", font="15", fg="#fff", bg="#3498db" , width=8, height=4).pack(expand=1, anchor= NE)
root.mainloop()
{{ :python:оконное_приложение:tkinter:упаковщики:pack2.png?400 |}}