TKinter je standardní knihovna pro tvorbu grafického uživatelského rozhraní (GUI) v jazyce Python. Je součástí standardní instalace Pythonu, což znamená, že není potřeba žádná dodatečná instalace, pokud již máte nainstalovaný Python. Stačí knihovnu naimportovat příkazem:
from tkinter import *
Pak můžeme používat libovolné objekty knihovny bez prefixu tkinter
.
S knihovnou TKinter můžete vytvářet různé typy grafických aplikací, jako jsou okenní aplikace, dialogová okna, formuláře, menu a další. Jedná se o jednoduchou a přitom dostatečně výkonnou knihovnu, vhodnou zejména pro začátečníky v tvorbě GUI aplikací. Knihovna TKinter je dobře dokumentovaná a má rozsáhlou komunitu uživatelů, je tedy snadné najít podporu a nápovědu při vývoji aplikací.
Knihovna TKinter poskytuje různé widgety (tj. grafické prvky) a layouty, které umožňují vytvářet různorodé uživatelské rozhraní podle potřeb aplikace.
Widget Canvas
V tomto prvním seznámení si představíme widget Canvas, tj. plátno, na které se dá kreslit a widgety pro popisky a tlačítka. Velice jednoduchý program může vypadat třeba takto:
Plátno a objekty
from tkinter import * # vytvoření grafického okna hlavni_okno = Tk() # popisek hlavního okna a jeho umístění popisek = Label(hlavni_okno, text=u"GRAFIKA V PYTHONU") popisek.pack(side=TOP) # tlačítka hlavního okna a jejich umístění tlacitko1 = Button(hlavni_okno, text="KONEC", fg="red", command=hlavni_okno.destroy) tlacitko1.pack(side=BOTTOM) # plátno, na které je možné kreslit platno = Canvas(hlavni_okno, width=400, height=400) platno.pack() # objekty, které vkládáme na plátno cara1 = platno.create_line(0, 400, 400, 0, fill = "red") oval1 = platno.create_oval(10, 10, 100, 150, fill="blue") text1 = platno.create_text(50, 200, text="Ahoj světe!") obd1 = platno.create_rectangle(100,100,120,140,fill="yellow") obl1 = platno.create_arc(300,50,380,180,fill="cyan", style=PIESLICE, start=45) trojuhelnik = platno.create_polygon(200, 200, 220, 280, 350, 330, fill = "#FF00DD", outline="") # spuštění grafického okna hlavni_okno.mainloop()
Tento program vytvoří grafické okno s popiskem, plátnem a na něm nakreslenými objekty a tlačítkem konec na spodu hlavního okna. Poslední příkaz spouští vykreslení hlavního okna se všemi jeho widgety a předání řízení programu smyčce událostí (na tu se podíváme příště).
Horní lišta je součástí hlavního okna.
Pod ní je první widget – popisek (Label). V tuto chvíli je statický, lze ho nicméně za běhu programu měnit.
Uprostřed je další widget – plátno s nakreslenými objekty: ovál (create_oval
), obdélník (create_rectangle
), kruhová výseč (create_arc), čára (create_line
) a trojúhelník (create_polygon
).
Ve spodní části je poslední widget: tlačítko KONEC, které po stisknutí zavolá metodu ukončení hlavního okna.
Příště si do programu přidáme další tlačítka, která po stisknutí vyvolají nějakou konkrétní akci objektu na ploše.