Készítsen egyszerű grafikus felhasználói felületeket a Raspberry Pi segítségével az EasyGUI segítségével
Grafikus felhasználói felület hozzáadása (GUI) az Ön számára Raspberry Pi A projekt nagyszerű módja annak, hogy beépítsünk egy képernyőt az adatok beviteléhez, a képernyőn megjelenő gombokat a vezérlőkhöz, vagy egy intelligensebb módot az alkatrészek, például az érzékelők által mért értékek megjelenítésére.
Ez a cikk a szabványos Raspbian operációs rendszert használja.
Készítsen felületet projektje számára
A Raspberry Pi-hez több grafikus felületi módszer is elérhető. A legtöbbnek azonban meredek a tanulási görbéje.
A legtöbb számára a Tkinter Python felület lehet az alapértelmezett beállítás, de a kezdők küzdhetnek a bonyolultságával. Hasonlóképpen, a PyGame könyvtár lehetőséget kínál lenyűgöző interfészek készítésére, de előfordulhat, hogy meghaladja a követelményeket.
Ha gyors és egyszerű felületet keres projektjéhez, az EasyGUI lehet a válasz. Ami hiányzik belőle a grafikai szépségben, azt bőven pótolja egyszerűségében és könnyű használatában.

Ez a cikk bemutatja a könyvtárat, beleértve az általunk talált leghasznosabb lehetőségeket.
Töltse le és importálja az EasyGUI-t
A könyvtár telepítése ismerős lesz, ha az apt-get telepítési módszert használta. Internetkapcsolatra van szüksége Raspberry Pi készülékén, akár vezetékes kapcsolat használatával Ethernet vagy Wi-Fi kapcsolat.
Ez a parancs letölti és telepíti a könyvtárat. Ez minden beállítás, amit el kell végeznie.
-
Nyisson meg egy terminálablakot (a fekete képernyő ikonja a Pi tálcáján), és írja be a következő parancsot:
az easygui importból *
behozatali időAz importálás ezen verziója megkönnyíti a kódolást a későbbiekben. Például ilyen módon történő importáláskor írás helyett easygui.msgbox, Te tudod használni msgbox.
-
A legegyszerűbb formájában ez üzenetdoboz szövegsort és egyetlen kattintásra szolgáló gombot ad. Íme egy példa a kipróbálásra. Írja be a következő sort az importálási sor után, és mentse a következővel Ctrl+x:
az easygui importból *
behozatali idő
msg = "Hűvös doboz, mi?"
title = "Üzenetdoboz vagyok"
# Adjon hozzá további parancsokatMegjelenik egy üzenetablak, a következővel: Üzenődoboz vagyok írva a felső sávba, és Menő doboz, mi? a gomb felett.
-
Néha a felhasználónak meg kell erősítenie egy műveletet, vagy választania kell, hogy folytatja-e. A ccbox doboz ugyanazt a szövegsort tartalmazza, mint a fenti elsődleges üzenetmező, de két gombbal rendelkezik: Folytatni és Megszünteti.
Íme egy példa egy használatban lévőre, ahol a Folytatás és a Mégse gombok nyomtatnak a terminálra. Módosíthatja a műveletet minden egyes gombnyomás után, hogy azt tegye, amit szeretne:
az easygui importból *
behozatali idő
msg = "Szeretné folytatni?"
title = "Folytatja?"
if ccbox (üzenet, cím): # Folytatás/Mégse párbeszédablak megjelenítése
nyomtatás "Felhasználó kiválasztott folytatás"
# Adjon hozzá további parancsokat
más: # felhasználó a Mégse lehetőséget választotta
nyomtatás "Felhasználó törölve"
# Adjon hozzá további parancsokat -
Ha a beépített doboz opciói nem azt nyújtják, amire szüksége van, hozzon létre egyéni gombdobozt a gombdoboz funkció. Ez nagyszerű, ha több olyan opciója van, amelyeknek le kell fednie, vagy ha számos LED-et vagy más összetevőt vezérel a felhasználói felületen.
Íme egy példa a szósz kiválasztására rendeléshez:
az easygui importból *
import time msg = "Melyik szószt szeretnéd?"
choices = ["Enyhe","Forró","Extra Forró"]
válasz = gombdoboz (üzenet, választások=választások) if reply == "Enyhe":
válasz nyomtatása
if reply == "Forró":
válasz nyomtatása
if reply == "Extra Hot":
válasz nyomtatása -
A gombok nagyszerűek, de a lehetőségek hosszú listájához a választási doboz van értelme. Ezek a mezők sorokban, egymás után listázzák a rendelkezésre álló lehetőségeket. An rendben és Megszünteti a doboz oldalt van. Ezek meglehetősen okosak, ábécé sorrendben rendezik az opciókat, és lehetővé teszik, hogy egy billentyű megnyomásával az adott betű első lehetőségére ugorjon.
Íme egy példa tíz névre, amelyek a képernyőképen láthatóan rendezve vannak.
az easygui importból *
behozatali idő
msg ="Ki engedte ki a kutyákat?"
title = "Eltűnt kutyák"
választási lehetőségek = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"]
választás = választási mező (üzenet, cím, választási lehetőségek) -
Az űrlapok nagyszerű lehetőséget kínálnak a projekt adatainak rögzítésére. Az EasyGUI-nak van egy multenterbox opció, amely lehetővé teszi a feliratozott mezők megjelenítését információszerzés céljából.
Ez a mezők címkézése és a bemenet rögzítése. Az alábbi példa egy egyszerű edzőterem-tagsági regisztrációs űrlapra vonatkozik.
Lehetőség van érvényesítési és egyéb speciális funkciók hozzáadására, amelyeket az EasyGUI webhely részletesen ismertet.
az easygui importból *
behozatali idő
msg = "Tag információ"
title = "Gym tagsági űrlap"
fieldNames = ["Keresztnév", "Vezetéknév", "Életkor", "Súly"]
fieldValues = [] # a kezdő értékek
fieldValues = multenterbox (üzenet, cím, mezőnevek)
nyomtatási mezőÉrtékek -
Minimális mennyiségű kód hozzáadásával képeket adhat hozzá EasyGUI felületéhez. Mentsen el egy képet a Raspberry Pi-re ugyanabba a könyvtárba, mint az EasyGUI-szkript, és jegyezze fel a fájl nevét és kiterjesztését (például image1.png).
Példaként használva a gombdobozt:
az easygui importból *
behozatali idő
image = "RaspberryPi.jpg"
msg = "Ez egy Raspberry Pi?"
choices = ["Igen","Nem"]
válasz = gombdoboz (üzenet, kép=kép, választások=választék)
ha válasz == "Igen":
nyomtatja ki az "Igen"
más:
nyomd ki a "Nem"
További speciális funkciók
Több dobozbeállítás és példa áll rendelkezésre attól függően, hogy mennyit szeretne tanulni, és mit igényel a projekt.

Jelszó-, kód- és fájlmezők állnak rendelkezésre, hogy csak néhányat említsünk. Ez egy sokoldalú könyvtár, amely percek alatt könnyen felvehető, és kiváló hardveres vezérlési lehetőségekkel is rendelkezik.
Ha szeretné megtanulni, hogyan kódoljon más dolgokat, például Java, HTML vagy egyebeket, tekintse meg a rendelkezésre álló legjobb online kódolási forrásokat.