Python: Programování GUI - to musíte vědět
Python programy vypadají mnohem lépe, když jsou spuštěny s GUI (Graphical User Interface). Jinak se k tomu často používá terminál. Zde vám ukážeme, jak můžete naprogramovat své vlastní uživatelské rozhraní pomocí modulu TkInter v Pythonu.
Programování GUI s Pythonem: okno s TkInter
Než začnete s grafickým rozhraním opravdu začít, musíte nejprve importovat modul TkInter a vytvořit okno.
- Chcete-li modul importovat, přidejte příkaz „from tkinter import *“ a příkaz „from tkinter import ttk“ (bez uvozovek) na samý začátek kódu.
- Nyní můžete vytvořit nové okno příkazem "root = Tk ()". Místo slova „root“ můžete použít jiné slovo. Je však vhodné použít stejnou proměnnou pro každý program, abyste mohli snáze najít cestu kolem programování.
- Název okna můžete zadat příkazem "root.title (" Test ")" (bez uvozovek na začátku a na konci). V tomto případě se okno nazývá „Test“.
- Na konci programu stačí vložit příkaz "root.mainloop ()", aby byl program kompletní.
TkInter s Pythonem: naprogramujte panel nabídek
V dnešní době se téměř v každém programu nachází panel nabídek. Můžete je také snadno naprogramovat pomocí modulu TkInter.
- Je důležité, abyste již provedli všechny výše uvedené kroky. Kód panelu nabídek musí být vložen mezi "root.title (" Test ")" a "root.mainloop ()".
- Musíte začít programovat lištu menu příkazem "menubar = Menu (root)" (bez uvozovek).
- První položku menu můžete vytvořit příkazem "filemenu = Menu (menu, tearoff = 0)". Místo proměnné „filemenu“ můžete také zvolit vlastní proměnnou.
- Přidejte první podpoložku s příkazem "filemenu.add_command (label =" Save ", command = save)". V tomto případě se podpoložka nazývá „Uložit“. Pokud toto stisknete, bude proveden příkaz „save ()“. Je důležité, abyste definovali příkazy v kódu před příkazem "root = Tk ()".
- Nyní můžete přidat libovolný počet podpoložek. Tip: Příkazem „filemenu.add_separator ()“ můžete také přidat dělicí řádek mezi jednotlivé dílčí položky.
- Až skončíte s položkou nabídky, nezapomeňte přidat příkaz "menubar.add_cascade (label =" file ", menu = filemenu)". Tento příkaz dává položce nabídky název „Soubor“.
- Pokud chcete přidat další položky nabídky, musíte pouze změnit proměnnou položky nabídky, aby nedocházelo k chybám. Místo „filemenu“ můžete použít „editmenu“ pokaždé.
- Nezapomeňte přidat příkaz „root.config (menu = menubar)“ před příkaz „root.mainloop ()“ na konec kódu, aby se také zobrazil panel nabídek.
GUI s Pythonem: přidejte štítky a položky
Nyní můžete začít přidávat texty a textová pole do vašeho programu Python.
- První štítek můžete přidat příkazem "a = Štítek (text =" Název: ", bg =" bílý ", fg =" černý ")" (bez uvozovek). Tento štítek je reprezentován proměnnou „a“ a má text „Jméno:“. Barva písma textu je černá a pozadí bílé.
- Aby byl štítek zobrazen, musíte pod něj napsat příkaz „a.grid ()“. Zjistíte, co potřebujete grid () pro v následujícím odstavci.
- Textové pole můžete vytvořit příkazem "b = Entry ()". V tomto případě je textové pole reprezentováno proměnnou "b".
- Opět byste měli znovu vložit příkaz grid: "b.grid ()"
Programování TkInter: Grid and Pack - Správce geometrie
Museli jste přemýšlet, na co potřebujete příkaz grid:
- Tento příkaz je správce geometrie. Pokud jsou závorky prázdné, nedělá nic.
- Příkaz však můžete změnit takto: "b.grid (row = 1, column = 1, sticky = W)". Textové pole by nyní bylo v řádku 1 a ve sloupci 1 a zarovnané na západ (levý okraj obrazovky).
- Pomocí příkazu grid můžete určit polohu a orientaci jednotlivých objektů. Všimněte si však, že s tímto příkazem je řádek 0 první řádek a sloupec 0 je první sloupec.
- Kromě správce geometrie mřížky je zde také správce geometrie balíků. Příkladem by byl příkaz "b.pack (side = 'top', fill =" x ", padx =" 5 ", pady =" 10 ")". S atributem „side“ můžete určit pozici v GUI. Pomocí atributu „výplň“ můžete upravit výšku a šířku komponenty GUI pro daný rámeček. S „padx“ a „pady“ můžete definovat prostor kolem komponenty GUI.
- Uvědomte si však, že v programu Python můžete použít mřížku nebo správce geometrie packů. Ale nikdy ne současně.
Programování GUI: přidejte tlačítka
Tlačítka lze také velmi často najít v programech. V Pythonu jsou tři důležitá standardní tlačítka:
- Například můžete přidat normální tlačítko příkazem "button1 = Button (text =" Test ", bg =" red ", fg =" black ", command = test1)" (bez uvozovek). Po stisknutí tohoto tlačítka se provede funkce „test1 ()“.
- Kromě běžných tlačítek existují i tzv. Kontrolní tlačítka. Příkladem by bylo "checkbutton1 = Checkbutton (root, text =" Test ", onvalue = 1, offvalue = 0, variabilní = var1)". Je důležité vložit příkaz "var1 = IntVar ()" předem. Toto je jediný způsob, jak program ví, že proměnná „var1“ je celočíselná proměnná. Pokud je políčko zaškrtnuto, "var1" vezme hodnotu "1" (onvalue). Pokud není zaškrtávací políčko aktivováno, předpokládá se hodnota 0 (hodnota mimo). Tip: Tuto hodnotu můžete zjistit příkazem "var1.get ()".
- Nakonec je zde přepínač. Můžete to přidat příkazem "radiobutton1 = Radiobutton (root, text =" Test ", hodnota = 1)". Všechna přepínací tlačítka, která mají stejnou hodnotu jako „hodnota“, se aktivují, jakmile je aktivováno jedno z těchto tlačítek. Proto byste měli pokaždé zadat jinou hodnotu, aby bylo aktivováno pouze jedno tlačítko.
- Mimochodem, nezapomeňte spravovat tlačítka pomocí správce geometrie mřížky nebo packu.
Python: Skrýt terminál
Terminál se obvykle zobrazuje pro každý program Python - bez ohledu na to, zda s GUI nebo bez GUI. To je však velmi nepříjemné, zejména u programů s grafickým uživatelským rozhraním. Můžete ji však také skrýt. Nyní vám ukážeme, jak to provést v systému Windows 10:
- Spusťte Průzkumník a klikněte na kartu "Zobrazit".
- Nyní se ujistěte, že je zaškrtnuto políčko „Přípony názvů souborů“.
- Přejmenujte soubor Python tak, aby přípona souboru již nebyla .py, ale .pyw.
Další tipy o Pythonu naleznete v našich průvodcích CHIP
Tip: Další programovací návody najdete na naší stránce s tématem programovacího jazyka Python. Zde vám například ukážeme, jak můžete používat funkce rozsahu a xrange.
$config[ads_text6] not found