Rozdział 16 · Tworzenie fajnych aplikacji z Tkinter

Wiersze i kolumny są grid

Dla formularzy wielokolumnowych grid() jest wygodniejsze niż pack().

.pack() jest świetna na proste okazje, ale tak jest Istnieje pewna granica: złożone kształty z wieloma kolumnami są trudne do złożenia. Dla tego istnieje .grid() — rozmieszczenie według łańcuch znakówm i kolumn, jak w tabeli:

grid.py
import tkinter as tk

root = tk.Tk()

tk.Label(root, text=„Imię:”).grid(row=0, column=0)
tk.Entry(root).grid(row=0, column=1)

tk.Label(root, text="Email:").grid(row=1, column=0)
tk.Entry(root).grid(row=1, column=1)

tk.Button(root, text=„Wyślij”).grid(row=2, column=0, columnspan=2)

root.mainloop()
Pozycja01
row=0Label «Imię:»Entry
row=1Label «Email:»Entry
row=2Button (columnspan=2 — zajmuje obie kolumny)
Nie mieszaj pack() i grid() w jednym kontenerze
Widżety w tym samym oknie nadrzędnym (lub ramce) muszą korzystać wyłącznie z jednego z tych elementów pack()lub tylko grid() — mieszanie powoduje błąd. Różne kontenery (np. zagnieżdżone Frame, rozdział 16.13) mogą używać różnych sposobów rozmieszczania niezależnie od siebie — szczegółowy schemat „dobrze/źle” będzie w rozdziale 16.15.

Jak sprawić, by taki formularz był responsywny na zmiany rozmiaru okien, znajduje się w sekcji 16.15 „Adaptacyjne grid”

Praktyka: Układ przez grid()
Moduł tkinter otwiera natywne okno Python — wykonaj lokalnie w VS Code, PyCharm lub Jupyter
Praktyka kursuje lokalnie
Otwórz praktykę →