Biblioteka tkinter jest jednym z najpopularniejszych narzędzi do tworzenia interfejsów graficznych w języku Python. Pozwala użytkownikom na tworzenie interaktywnych aplikacji za pomocą różnych typów widżetów, takich jak przyciski, pola tekstowe czy etykiety. Jedną z najważniejszych funkcji biblioteki tkinter jest możliwość ustawiania pozycji tych elementów przy pomocy metody grid()
. Dzięki temu możemy precyzyjnie kontrolować rozmieszczenie elementów w oknie aplikacji.
Przykład 1
Poniższy kod prezentuje prosty przykład użycia metody grid()
do rozmieszczenia dwóch przycisków w oknie aplikacji:
import tkinter as tk
root = tk.Tk()
button1 = tk.Button(root, text='Przycisk 1')
button2 = tk.Button(root, text='Przycisk 2')
button1.grid(row=0, column=0)
button2.grid(row=1, column=0)
root.mainloop()
Wynik działania tego kodu będzie widoczny po uruchomieniu aplikacji. Przyciski zostaną wyświetlone jeden pod drugim, w odpowiednich wierszach, zgodnie z wartościami podanymi w metodzie grid()
.
Przykład 2
W drugim przykładzie chcemy umieścić przycisk w jednym wierszu, ale w trzech kolumnach. Oto jak można to zrobić:
import tkinter as tk
root = tk.Tk()
button1 = tk.Button(root, text='Przycisk 1')
button2 = tk.Button(root, text='Przycisk 2')
button3 = tk.Button(root, text='Przycisk 3')
button1.grid(row=0, column=0)
button2.grid(row=0, column=1)
button3.grid(row=0, column=2)
root.mainloop()
Wynik działania tego kodu będzie widoczny po uruchomieniu aplikacji. Przyciski zostaną wyświetlone obok siebie, w jednym wierszu, zgodnie z wartościami podanymi w metodzie grid()
.
Przykład 3
W trzecim przykładzie dodamy do naszego okna aplikacji dwa pola tekstowe. Tym razem zastosujemy większe wartości parametrów row
i column
dla poszczególnych elementów:
import tkinter as tk
root = tk.Tk()
button1 = tk.Button(root, text='Przycisk 1')
button2 = tk.Button(root, text='Przycisk 2')
entry1 = tk.Entry(root)
entry2 = tk.Entry(root)
button1.grid(row=0, column=0)
button2.grid(row=1, column=0)
entry1.grid(row=0, column=1, columnspan=2)
entry2.grid(row=1, column=1, columnspan=2)
root.mainloop()
Wynik działania tego kodu będzie widoczny po uruchomieniu aplikacji. Przyciski zostaną wyświetlone jeden pod drugim, a pola tekstowe rozciągną się na dwie kolumny, zgodnie z wartościami podanymi w metodzie grid()
.
Podsumowanie
Metoda grid()
w bibliotece tkinter pozwala na precyzyjne pozycjonowanie elementów w oknie aplikacji. Dzięki zdefiniowaniu wierszy, kolumn i ich położenia, możemy ustalić dokładne rozmieszczenie widżetów. Powyższe przykłady pokazują podstawowe zastosowanie tej metody, ale w praktyce możemy go wykorzystać w znacznie bardziej zaawansowany sposób.