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 většinou výchozí volbou "jít na", nicméně začátečníci se mohou potýkat 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.
02 z 10
Stažení a importování EasyGUI
V tomto článku používáme standardní operační systém Raspbian, který je zde k dispozici.
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-easyguiTento příkaz stáhne knihovnu a nainstaluje ji pro vás, a to je vše, co musíte udělat.
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.pyObjeví 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 ewayu namísto toho, abychom museli psát '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 okno se zprávou ve své nejjednodušší podobě dává uživateli řadu textů a jediné tlačítko klepnutí. Zde je příklad, který můžete vyzkoušet - zadejte po řádku importu následující řádek a uložte pomocí kláves 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.pyMěli byste vidět, že se v horní liště zobrazí zpráva "Jsem schránka zpráv" a "Cool box?" nad tlačítkem.
05 z 10
Pokračovat nebo Zrušit pole
Někdy budete muset uživateli potvrdit akci 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šit'.
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 * čas importu msg = "Chtěli byste pokračovat?" title = "Pokračovat?" pokud ccbox (msg, title): # zobrazí dialog pro tisk Pokračovat / Zrušit "Uživatel vybraný pokračovat" # Přidat další příkazy: # Uživatel zvolil Zrušit tisk "Uživatel zrušil" # Přidat další příkazy06 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 * importovat čas msg = "Která omáčka byste chtěli?" volby = ["Mírné", "Hot", "Extra Hot"] odpověď = tlačítko boxu (msg, možnosti = volby) if reply == "Mild": print reply if reply == "Hot" "Extra Hot": tisková odpověď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 * čas importu msg = "Kdo pustil psy?" title = "Chybějící psi" volby = "Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah" = pole výběru (msg, název, volby)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 easygui import * čas importu msg = "Informace o členu" title = "Formulář členství Gym" poleName = ["Jméno", "Příjmení", "Věk", "Hmotnost"] poleValues = [# počáteční hodnoty fieldValues = (msg, title, fieldNames) tisknout pole Hodnoty09 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říklad image1.png).
Použijeme jako příklad krabici s tlačítky:
od importu easygui * import čas image = "RaspberryPi.jpg" msg = "Je to malina Pi?" volby = = "Ano", "Ne"] odpověď = tlačítko boxu (msg, obrázek = obrázek, výběr = volby) if reply == "Ano"10 z 10
Další pokročilé funkce
Pokryli jsme hlavní "základní" možnosti EasyGUI, abyste mohli začít, nicméně existuje spousta dalších možností a příkladů v závislosti na tom, jak moc se chcete naučit a co váš projekt vyžaduje.
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.
Chcete-li se dozvědět, jak kódovat další věci, jako je Java, HTML nebo další, jsou zde k dispozici nejlepší zdroje online kódování .