Izveidojiet vienkāršus GUI, izmantojot Raspberry Pi, izmantojot EasyGUI

Grafiskā lietotāja interfeisa pievienošana (GUI) uz tavu Raspberry Pi projekts ir lielisks veids, kā iekļaut ekrānu datu ievadīšanai, ekrāna pogas vadīklām vai viedāku veidu, kā parādīt rādījumus no komponentiem, piemēram, sensoriem.

Šajā rakstā tiek izmantota standarta Raspbian operētājsistēma.

Izveidojiet savam projektam saskarni

Raspberry Pi ir pieejamas vairākas GUI metodes. Tomēr lielākajai daļai ir strauja mācīšanās līkne.

Tkinter Python saskarne lielākajai daļai var būt noklusējuma opcija, taču iesācēji var cīnīties ar tās sarežģītību. Tāpat PyGame bibliotēka piedāvā iespējas izveidot iespaidīgus interfeisus, taču tā var neatbilst prasībām.

Ja savam projektam meklējat ātru un vienkāršu saskarni, EasyGUI varētu būt atbilde. Pietrūkst grafiskā skaistuma, tas vairāk nekā kompensē vienkāršību un lietošanas ērtumu.

EasyGUI ziņojumu kastes

Šajā rakstā ir sniegts ievads par bibliotēku, tostarp dažas no visnoderīgākajām iespējām, ko esam atraduši.

Lejupielādējiet un importējiet EasyGUI

Bibliotēkas instalēšana būs pazīstama, ja esat izmantojis instalēšanas metodi apt-get. Raspberry Pi ir nepieciešams interneta savienojums, izmantojot vadu

Ethernet vai Bezvadu internets savienojums.

Šī komanda lejupielādē bibliotēku un instalē to jūsu vietā. Tas ir viss, kas jums jādara.

  1. Atveriet termināļa logu (melna ekrāna ikona jūsu Pi uzdevumjoslā) un ievadiet šādu komandu:

    no easygui importa *
    importa laiks

    Importējiet EasyGUI

    Šī importēšanas versija vēlāk atvieglo kodēšanu. Piemēram, importējot šādā veidā, nevis rakstot easygui.msgbox, tu vari izmantot msgbox.

  2. Vienkāršākajā formā šis ziņojumu lodziņš nodrošina teksta rindiņu un vienu pogu, uz kuras jānoklikšķina. Šeit ir piemērs, ko izmēģināt. Pēc importēšanas rindas ievadiet šo rindiņu un saglabājiet, izmantojot Ctrl+X:

    no easygui importa *
    importa laiks
    msg = "Forša kaste, vai ne?"
    title = "Es esmu ziņojumu lodziņš"
     # Šeit pievienojiet citas komandas

    Tiek parādīts ziņojumu lodziņš ar Es esmu Ziņojumu kastīte rakstīts augšējā joslā, un Forša kaste, vai ne? virs pogas.

    EasyGUI ziņojumu lodziņš
  3. Dažreiz lietotājam būs jāapstiprina darbība vai jāizvēlas, vai turpināt. ccbox lodziņā ir tāda pati teksta rindiņa kā primārajā ziņojuma lodziņā, bet tajā ir divas pogas: Turpināt un Atcelt.

    Šeit ir izmantots piemērs, kurā tiek drukātas pogas Turpināt un Atcelt. Varat mainīt darbību pēc katras pogas nospiešanas, lai darītu visu, kas jums patīk:

    no easygui importa *
    importa laiks
    msg = "Vai vēlaties turpināt?"
    title = "Turpināt?"
    ja ccbox (ziņa, virsraksts): # parāda dialoglodziņu Turpināt/Atcelt
     drukāt "Lietotājs izvēlējies turpināt"
     # Šeit pievienojiet citas komandas
     cits: # lietotājs izvēlējās Atcelt
     drukāt "Lietotājs atcelts"
     # Šeit pievienojiet citas komandas

    EasyGUI Continue Cancel Box
  4. Ja iebūvētās lodziņa opcijas nesniedz to, kas jums nepieciešams, izveidojiet pielāgotu pogu lodziņu, izmantojot pogu kaste funkciju. Tas ir lieliski, ja jums ir vairāk iespēju, kurām nepieciešams pārklājums, vai, iespējams, jūs kontrolējat vairākas gaismas diodes vai citus komponentus, izmantojot lietotāja interfeisu.

    Šeit ir piemērs mērces atlasei pasūtījumam:

    no easygui importa *
    import time msg = "Kādu mērci jūs vēlētos?"
    izvēles = ["Maiga","Karsta","Īpaši karsta"]
    reply = buttonbox (ziņa, choices=choices) if reply == "Maiga":
    drukāt atbildi
    ja atbilde == "Karsts":
    drukāt atbildi
    if reply == "Īpaši karsts":
    drukāt atbildi

    EasyGUI pogu kaste
  5. Pogas ir lieliskas, taču gariem iespēju sarakstiem a izvēles lodziņš ir jēga. Šajās lodziņās pieejamās opcijas ir norādītas rindās viena pēc otras. An labi un Atcelt kaste atrodas sānos. Tie ir pietiekami gudri, sakārtojot opcijas alfabētiskā secībā, kā arī ļaujot nospiest taustiņu, lai pārietu uz šī burta pirmo opciju.

    Šeit ir piemērs, kurā parādīti desmit nosaukumi, kuri, kā redzams, ir sakārtoti ekrānuzņēmumā.

    no easygui importa *
    importa laiks
    msg ="Kas izlaida suņus?"
    title = "Pazudušie suņi"
    izvēles = ["Alekss", "Kaķis", "Maikls", "Džeimss", "Alberts", "Fils", "Jasmīna", "Frenks", "Tims", "Hanna"]
    izvēle = izvēles lodziņš (ziņa, nosaukums, izvēles)

    EasyGUI izvēles lodziņš
  6. Veidlapas ir lielisks veids, kā iegūt datus savam projektam. EasyGUI ir a daudzfunkciju kaste opcija, kas ļauj parādīt marķētus laukus, lai iegūtu informāciju.

    Tas attiecas uz lauku marķēšanu un ievades tveršanu. Tālāk sniegtais piemērs ir vienkāršai sporta zāles dalības reģistrēšanās veidlapai.

    Ir iespējas pievienot validāciju un citas papildu funkcijas, par kurām EasyGUI vietne ir detalizēti aprakstīta.

    no easygui importa *
    importa laiks
    msg = "Dalībnieka informācija"
    title = "Trenažieru zāles dalības veidlapa"
    fieldNames = ["Vārds", "Uzvārds", "Vecums", "Svars"]
    fieldValues ​​= [] # sākuma vērtības
    fieldValues ​​= multenterbox (ziņa, virsraksts, lauku nosaukumi)
    drukas laukaVērtības

    EasyGUI Multiterbox
  7. Varat pievienot attēlus savām EasyGUI saskarnēm, iekļaujot minimālu koda daudzumu. Saglabājiet attēlu savā Raspberry Pi tajā pašā direktorijā, kurā atrodas EasyGUI skripts, un pierakstiet faila nosaukumu un paplašinājumu (piemēram, image1.png).

    Izmantojot pogu lodziņu kā piemēru:

    no easygui importa *
    importa laiks
    attēls = "RaspberryPi.jpg"
    msg = "Vai tas ir Raspberry Pi?"
    izvēles = ["Jā", "Nē"]
    atbilde = pogu kaste (ziņa, attēls = attēls, izvēles = izvēles)
    ja atbilde == "Jā":
    drukāt "Jā"
    cits:
    drukāt "nē"

    EasyGUI attēli

Vairāk uzlabotas funkcijas

Atkarībā no tā, cik daudz vēlaties uzzināt un kas nepieciešams jūsu projektam, ir pieejamas vairāk lodziņa opciju un piemēru.

EasyGUI parole

Ir pieejami paroļu lodziņi, kodu lodziņi un failu lodziņi. Tā ir daudzpusīga bibliotēka, kuru ir viegli paņemt dažu minūšu laikā, un tajā ir arī dažas lieliskas aparatūras vadības iespējas.

Ja vēlaties uzzināt, kā kodēt citas lietas, piemēram, Java, HTML vai citas, skatiet labākos pieejamos tiešsaistes kodēšanas resursus.