Biblioteka tkinter
w języku Python oferuje wiele przydatnych narzędzi do tworzenia interfejsów graficznych. Jednym z tych narzędzi jest canvas
, które pozwala na rysowanie grafiki i tworzenie prostych animacji.
Przykład 1: Rysowanie prostokąta
from tkinter import Tk, Canvas
window = Tk()
canvas = Canvas(window, width=400, height=300)
canvas.pack()
canvas.create_rectangle(50, 50, 250, 150, fill='blue')
window.mainloop()
Opis działania:
- Tworzymy okno główne za pomocą
Tk()
. - Tworzymy obszar
canvas
o szerokości 400 pikseli i wysokości 300 pikseli. - Wywołujemy metodę
pack()
na obiekciecanvas
, aby umieścić go w oknie. - Używamy metody
create_rectangle()
na obiekciecanvas
, aby narysować prostokąt o współrzędnych (50, 50) i (250, 150), wypełniony kolorem niebieskim. - Uruchamiamy pętlę główną
mainloop()
okna.
Przykład 2: Rysowanie linii
from tkinter import Tk, Canvas
window = Tk()
canvas = Canvas(window, width=400, height=300)
canvas.pack()
canvas.create_line(50, 50, 250, 150, fill='red')
window.mainloop()
Opis działania:
- Podobnie jak w poprzednim przykładzie, tworzymy okno, obszar canvas i umieszczamy go w oknie.
- Używamy metody
create_line()
na obiekciecanvas
, aby narysować linię o współrzędnych (50, 50) i (250, 150), wypełnioną kolorem czerwonym. - Uruchamiamy pętlę główną okna.
Przykład 3: Rysowanie okręgu
from tkinter import Tk, Canvas
window = Tk()
canvas = Canvas(window, width=400, height=300)
canvas.pack()
canvas.create_oval(50, 50, 250, 250, fill='green')
window.mainloop()
Opis działania:
- Ponownie tworzymy okno, obszar canvas i umieszczamy go w oknie.
- Używamy metody
create_oval()
na obiekciecanvas
, aby narysować okrąg o współrzędnych (50, 50) i (250, 250), wypełniony kolorem zielonym. - Uruchamiamy pętlę główną okna.
Podsumowanie:
Biblioteka tkinter
i jej narzędzie canvas
są łatwe w użyciu i oferują wiele możliwości do rysowania grafiki i tworzenia prostych animacji w Pythonie. Dzięki prostocie i elastyczności, są one doskonałym narzędziem dla programistów, którzy chcą stworzyć prosty interfejs graficzny w swoich aplikacjach.