Tkinter

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 18. března 2017; kontroly vyžadují 20 úprav .

Tkinter (z anglického  Tk interface ) je multiplatformní událostmi řízená grafická knihovna založená na nástrojích Tk (široce distribuovaná ve světě GNU / Linuxu a dalších UNIXových systémech, také portována na Microsoft Windows ), kterou napsal Steen Lumholt . (Steen Lumholt) a Guido van Rossum [1] . Zahrnuto ve standardní knihovně Pythonu .

Tkinter je svobodný software distribuovaný pod licencí Python [2]  .

Schůzka

Knihovna je navržena tak, aby organizovala dialogy v programu pomocí grafického rozhraní v okně ( GUI ). Knihovna obsahuje běžné grafické komponenty:

Je třeba také poznamenat, že Python má sadu dalších nástrojů v následujících modulech:

Příklad: Program Hello World

z importu tkinter * kořen = Tk () kořen . název ( "Ahoj světe!" ) kořen . geometrie ( '300x40' ) def button_clicked (): tisk ( "Ahoj svět!" ) odklopit ( ): kořen . zničit () kořen . skončit () button = Button ( root , text = "Press Me" , command = button_clicked ) tlačítko . balení ( naplnit = OBA ) kořen . protokol ( 'WM_DELETE_WINDOW' , zavřít ) kořen . hlavní smyčka ()

Analýza programu

Výše uvedený příklad ukazuje nejjednodušší GUI aplikaci v Pythonu. První řádek programu importuje modul tkinter (před verzí 3.1 jazyka Python byl název modulu tkinter psán v kódu s velkým písmenem - "Tkinter"):

z importu tkinter *

V důsledku importu do jmenného prostoru programu (skriptu) jsou v Tkinter zabudována jména, ke kterým lze přistupovat přímo. Je třeba poznamenat, že hromadný import jmen může vést k jejich konfliktu. Kromě toho trvá tlumočníkovi více času, než v seznamu dostupných jmen najde to správné.

Následující příkaz vytvoří kořenové (kořenové) okno programu (dále jen okno):

kořen = Tk ()

Následující příkaz změní název okna:

kořen . název ( "Ahoj světe!" )

Následující příkaz nastavuje rozměry okna:

kořen . geometrie ( '300x40' )

Následuje definice obslužné rutiny funkce pro událost „stisknuto tlačítko myši“.

def button_clicked (): print ( "Ahoj světe!" )

Funkce-handler události "zavření hlavního okna". Zastaví hlavní smyčku aplikace a zničí hlavní okno. Bez něj lze program zavřít pouze v případě, že je ukončen proces interpretru Pythonu. Protože funkce používá globální proměnnou root, deklarace samotné funkce musí následovat po deklaraci kořenové proměnné.

def close (): root . zničit () kořen . skončit ()

Vytvořte tlačítko s textem „Press Me“ a svažte jej s výše definovanou funkcí handleru:

button = Button ( root , text = "Press Me" , command = button_clicked )

Vytvořené tlačítko „zabalíme“ pomocí správce rozložení balíčků. fill=BOTH (také fill="both") říká tlačítku, aby zabralo veškerý dostupný prostor (šířku a výšku) na rodičovském kořenovém widgetu:

tlačítko . balení ( naplnit = OBA )

Svažte událost zavření hlavního okna s funkcí close handler:

kořen . protokol ( 'WM_DELETE_WINDOW' , zavřít )

Spustíme hlavní smyčku aplikace:

kořen . hlavní smyčka ()

V důsledku stisknutí tlačítka se na konzole zobrazí zpráva „Hello, World!“. Zpráva se zobrazí při každém stisknutí tlačítka.

Viz také

Poznámky

  1. Matt Conway, Tkinter Life Preserver Archivováno 31. května 2016 na Wayback Machine 
  2. Přehled Tkinter Archivováno 13. listopadu 2013.  (Angličtina)

Literatura

  • John E Grayson. Programování v Pythonu a Tkinter. - Manning Publications, 1999. - 658 s. — ISBN 9781884777813 .
  • Suzi R.A. Vytváření aplikací s grafickým uživatelským rozhraním // The Python Programming Language: A Tutorial. - M .: Intuit, Binom. Vědomostní laboratoř, 2006. - 328 s. — ISBN 5-9556-0058-2 .

Odkazy