Skip to main content

Make Simple GUIs s malinovou Pi pomocí EasyGUI

GUI with Python's Tkinter, by Robert Jomar Malate (Červen 2026)

GUI with Python's Tkinter, by Robert Jomar Malate (Červen 2026)
Anonim

Přidání grafického uživatelského rozhraní (GUI) do projektu Raspberry Pi je skvělý způsob, jak zahrnout obrazovku pro zadávání dat, tlačítka na obrazovce pro ovládací prvky nebo dokonce jen chytřejší způsob, jak zobrazovat údaje z komponent, jako jsou senzory.

01 z 10

Vytvořte rozhraní pro váš projekt

Pro Raspberry Pi je k dispozici řada různých GUI metod, ale většina z nich má strmou křivku učení.

Rozhraní Tkinter Python může být pro většinu výchozí volbou "go-to", nicméně začátečníci mohou bojovat s jeho složitostí. Stejně tak knihovna PyGame nabízí možnosti pro vytváření impozantních rozhraní, ale může převyšovat požadavky.

Pokud hledáte jednoduché a rychlé rozhraní pro váš projekt, mohlo by to být řešení EasyGUI. To, co mu chybí v grafické kráse, je víc, než co dělá v jeho jednoduchosti a snadnosti použití.

Tento článek vám poskytne úvod do knihovny včetně některých nejužitečnějších možností, které jsme našli.

Pokračujte ve čtení níže

02 z 10

Stažení a importování EasyGUI

V tomto článku používáme standardní operační systém Raspbian.

Instalace knihovny bude většinou známým procesem pomocí metody "apt-get install". Budete potřebovat připojení k internetu na vašem Raspberry Pi pomocí kabelového připojení Ethernet nebo WiFi.

Otevřete okno terminálu (ikona černé obrazovky na hlavním panelu nástroje Pi) a zadejte následující příkaz:

apt-get nainstalovat python-easygui

Tento příkaz stáhne knihovnu a nainstaluje ji pro vás, a to je vše, co musíte udělat.

Pokračujte ve čtení níže

03 z 10

Importujte aplikaci EasyGUI

EasyGUI je třeba importovat do skriptu, abyste mohli používat jeho funkce. Toho lze dosáhnout zadáním jediného řádku v horní části skriptu a je to stejné bez ohledu na to, které možnosti rozhraní EasyGUI používáte.

Vytvořte nový skript zadáním následujícího příkazu do okna terminálu:

sudo nano easygui.py

Objeví se prázdná obrazovka - je to váš prázdný soubor (nano je jednoduše název textového editoru). Chcete-li importovat program EasyGUI do skriptu, zadejte následující řádek:

z importu easygui *

Tuto specifickou verzi importu používáme, abychom ještě později usnadnili kódování. Například při importu tohoto eway namísto toho, abychom museli napsat "easygui.msgbox", můžeme jednoduše použít "msgbox".

Nyní pokryjeme některé klíčové možnosti rozhraní v EasyGUI.

04 z 10

Základní schránka zpráv

Toto "pole se zprávou" ve své nejjednodušší podobě dává uživateli řadu textů a jediné tlačítko pro kliknutí. Zde je příklad k vyzkoušení - zadejte po řádku importu následující řádek a uložte jej pomocí Ctrl + X:

msgbox ("Cool box huh?", "Jsem schránka zpráv")

Chcete-li skript spustit, použijte následující příkaz:

sudo python easygui.py

Mělo by se zobrazit okno se zprávou Jsem schránka zpráv napsané v horní liště a Cool box? nad tlačítkem.

Pokračujte ve čtení níže

05 z 10

Pokračovat nebo Zrušit pole

Někdy budete potřebovat uživatele k potvrzení akce nebo zvolit, zda chcete pokračovat. Pole "ccbox" nabízí stejný text jako hlavní textové pole výše, ale obsahuje 2 tlačítka - Pokračovat a zrušení.

Zde je příklad, který se používá, tlačítka pro pokračování a zrušení tisku na terminál. Akce můžete změnit po každém stisknutí tlačítka, abyste provedli co chcete:

z importu easygui *importovat časmsg = "Chtěli byste pokračovat?"title = "Pokračovat?"pokud ccbox (msg, title): # zobrazí dialog Pokračovat / Zrušit tisk "Pokračování uživatele" # Přidejte další příkazy zde else: # uživatel zvolil Zrušit tisk "Uživatel zrušen" # Přidejte další příkazy zde 06 z 10

Vlastní pole s tlačítky

Pokud vestavěné možnosti krabice neposkytují zcela to, co potřebujete, můžete vytvořit vlastní tlačítko pomocí funkce "buttonbox".

To je skvělé, pokud máte více možností, které potřebují pokrýt, nebo snad ovládají řadu LED nebo jiných komponent s uživatelským rozhraním.

Zde je příklad výběru omáčky pro objednávku:

z importu easygui *import time msg = "Která omáčka byste chtěli?"volby = "Mírné", "Hot", "Extra Hot"odpověď = knoflík s tlačítky (msg, volby = volby), pokud odpověď == "Mírná": tisknout odpověďpokud odpověď == "Hot": tisknout odpověďpokud odpověď == "Extra Hot": tisknout odpověď

Pokračujte ve čtení níže

07 z 10

Volba krabice

Tlačítka jsou skvělé, ale pro dlouhé seznamy možností, "volba box" má velký smysl. Zkuste 10 knoflíků v krabici a brzy se dohodnete!

Tyto políčka obsahují seznam dostupných možností v řadách za sebou, zaškrtnutím políčka 'OK' a 'Zrušit'. Jsou přiměřeně chytří, seřazují možnosti abecedně a také vám umožní stisknout klávesu k přechodu na první možnost tohoto dopisu.

Zde je příklad znázorňující deset jmen, které můžete vidět na obrazovce.

z importu easygui *importovat časmsg = "Kdo pustil psy ven?"title = "Chybějící psi"volby = "Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"choice = choicebox (msg, title, choices) 08 z 10

Políčko pro zadání dat

Formuláře jsou skvělý způsob, jak zachytit data pro váš projekt a EasyGUI má volbu "multenterbox", která vám umožní zobrazit označená pole pro zachycení informací.

Ještě jednou je to případ označování polí a jednoduché zachycení vstupu. Uvedli jsme příklad níže pro velmi jednoduchý formulář pro členství v tělocvičně.

K dispozici jsou možnosti přidání ověření a dalších pokročilých funkcí, které podrobně popisuje webovou stránku EasyGUI.

z importu easygui *importovat časmsg = "Informace o členu"title = "Formulář pro členství v Gym"fieldNames = "Jméno", "Příjmení", "Věk", "Hmotnost"fieldValues ​​= # výchozí hodnotyfieldValues ​​= multenterbox (msg, title, fieldNames)printValues

Pokračujte ve čtení níže

09 z 10

Přidávání obrázků

Přidáním obrázků do rozhraní EasyGUI můžete přidat velmi malé množství kódu.

Uložte obrázek do vašeho Raspberry Pi ve stejném adresáři jako skript EasyGUI a poznamenejte si název souboru a příponu (např. image1.png ).

Použijeme jako příklad krabici s tlačítky:

z importu easygui *importovat časobrázek = "RaspberryPi.jpg"msg = "Je to malina Pi?"volby = "Ano", "Ne"odpověď = knoflík s tlačítky (msg, obrázek = obrázek, možnosti = volby)pokud odpověď == "Ano": tisknout "Ano"jiný: tisk "Ne" 10 z 10

Další pokročilé funkce

Pokryli jsme zde hlavní "základní" funkce EasyGUI, abychom vám mohli začít, avšak v závislosti na tom, kolik se chcete dozvědět a co váš projekt vyžaduje, je k dispozici mnoho možností a příkladů.

Hesla, krabice s kódem a dokonce i schránky souborů jsou k dispozici, abychom jmenovali několik. Jedná se o velmi všestrannou knihovnu, kterou lze snadno vybírat v několika minutách, s některými skvělými možnostmi řízení hardwaru.

Pokud se chcete dozvědět, jak kódovat další věci, jako je jazyk Java, HTML nebo více, můžete vidět ty nejlepší zdroje online kódování, které jsou k dispozici.