Agħmel GUIs Sempliċi Bil-Raspberry Pi Permezz ta 'EasyGUI

Żieda ta 'interface tal-utent grafiku (GUI) mal-proġett Raspberry Pi tiegħek huwa mod tajjeb ħafna biex tinkludi skrin għad-dħul tad-dejta, buttuni fuq il-iskrin għal kontrolli jew anke sempliċiment mod aktar intelliġenti biex jintwera qari minn komponenti bħal sensers.

01 ta '10

Agħmel Interface għall-Proġett Tiegħek

EasyGUI huwa proġett ta 'malajr u sempliċi biex nipprova dan il-weekend. Richard Saville

Hemm għadd ta 'metodi GUI differenti disponibbli għall-Raspberry Pi, madankollu, ħafna minnhom għandhom kurva ta' tagħlim wieqaf.

L-interface ta 'Tkinter Python jista' jkun l-għażla default 'go to' għal ħafna, madankollu, dawk li jibdew jistgħu jitħabtu mal-kumplessità tiegħu. Bl-istess mod, il-librerija PyGame toffri għażliet biex tagħmel interfaces impressjonanti iżda tista 'tkun żejda għar-rekwiżiti.

Jekk qed tfittex interface sempliċi u ta 'malajr għall-proġett tiegħek, EasyGUI jista' jkun it-tweġiba. Dak li huwa nieqes minn sbuħija grafika huwa aktar milli jagħmel tajjeb għas-sempliċità u l-faċilità ta 'l-użu tiegħu.

Dan l-artikolu jagħtik introduzzjoni għall-librerija, inklużi xi wħud mill-aktar għażliet utli li sibna.

02 ta '10

Tniżżil u Importazzjoni ta 'EasyGUI

L-installazzjoni EasyGUI hija sempliċi bil-metodu 'apt-get install'. Richard Saville

Għal dan l-artikolu, aħna qed tuża s-sistema operattiva standard Raspbian li hija disponibbli hawn.

L-installazzjoni tal-librerija se tkun proċess familjari għal ħafna, bl-użu tal-metodu 'apt-get install'. Int ser ikollok bżonn ta 'konnessjoni bl-internet fuq Raspberry Pi tiegħek, billi tuża jew Ethernet bil-fili jew konnessjoni WiFi.

Iftaħ tieqa tat-terminal (l-ikona ta 'skrin iswed fuq it-taskbar ta' Pi) u daħħal il-kmand li ġej:

apt-get install python-easygui

Dan il-kmand se jniżżel il-librerija u jinstallah għalik, u dak kollu li għandek bżonn tagħmel.

03 ta '10

Importa EasyGUI

Importazzjoni EasyGUI tieħu biss linja waħda. Richard Saville

EasyGUI jeħtieġ li jiġi importat f'kitba qabel ma tkun tista 'tuża l-funzjonijiet tagħha. Dan jinkiseb billi tiddaħħal linja waħda fil-quċċata ta 'l-iskritt tiegħek u hija l-istess irrispettivament minn liema għażliet ta' interface EasyGUI tuża.

Oħloq skrittura ġdida billi ddaħħal il-kmand li ġej fit-tieqa tat-terminal tiegħek:

sudo nano easygui.py

Se jidhru skrin vojt - dan huwa l-fajl vojt tiegħek (nano huwa sempliċement l-isem ta 'editur tat-test). Biex timporta EasyGUI fl-iskrittura tiegħek, daħħal il-linja li ġejja:

minn importazzjoni easygui *

Aħna nużaw din il-verżjoni speċifika ta 'l-importazzjoni biex il-kodifikazzjoni ssir saħansitra aktar faċli aktar tard. Pereżempju, meta timporta dan il-eway, minflok li jkollok tikteb "easygui.msgbox" nistgħu sempliċement jużaw "msgbox".

Issa ejja tkopri uħud mill-għażliet ta 'l-interface ewlenin fi ħdan EasyGUI.

04 ta '10

Kaxxa ta 'messaġġi bażiċi

Il-kaxxa ta 'messaġġ sempliċi hija mod tajjeb ħafna biex tibda EasyGUI. Richard Saville

Dan il-kaxxa tal-messaġġ, fil-forma sempliċi tagħha, tagħti lill-utent linja ta 'test u buttuna waħda biex tikklikkja. Hawn hu eżempju li nipprova - niżżel il-linja li ġejja wara l-linja ta 'importazzjoni tiegħek, u ssalva l-użu ta' Ctrl + X:

msgbox ("Cool box huh?", "Jiena Kaxxa tal-Messaġġ")

Biex tmexxi l-iskript, uża l-kmand li ġej:

sudo python easygui.py

Għandek tara kaxxa ta 'messaġġ tidher, b' "Jiena Kaxxa ta 'Messaġġ" bil-miktub fil-bar ta' fuq, u "Kaxxa Kaxxa Hui?" 'il fuq mill-buttuna.

05 ta '10

Ikompli jew Ikkanċella Kaxxa

Il-kaxxa Continue / Cancel tista 'żżid il-konferma għall-proġetti tiegħek. Richard Saville

Kultant ikollok bżonn lill-utent biex jikkonferma azzjoni jew jagħżel jekk għandux ikompli jew le. Il-kaxxa "ccbox" toffri l-istess linja ta 'test bħall-kaxxa bażika tal-messaġġi ta' hawn fuq, iżda tipprovdi 2 buttuni - "Tkompli" u "Ikkanċella".

Hawn hu eżempju ta 'wieħed waqt l-użu, bil-buttuni ta' tkomplija u tikkanċella stampar lejn it-terminal. Inti tista 'tibdel l-azzjoni wara kull pressjoni buttuna biex tagħmel dak kollu li tixtieq:

mill-importazzjoni ta 'easygui * importazzjoni ħin msg = "Tixtieq tkompli?" titolu = "Kompli?" jekk ccbox (msg, titlu): # turi print ta 'dialog Continue / Cancel "Utent magħżul ikompli" # Żid kmandi oħra hawnhekk ieħor: # utent għażel Ċempel print "Utent ikkanċellat" # Żid kmandi oħra hawn

06 ta '10

Kaxxa tal-buttuna Custom

Il- "buttonbox" jippermettilek li tagħmel għażliet tal-buttuna tad-dwana. Richard Savlle

Jekk l-għażliet tal-kaxxa integrati ma jagħtux dak li għandek bżonn, tista 'toħloq kaxxa tal-buttuna użata billi tuża l-karatteristika' buttonbox '.

Dan huwa kbir jekk għandek aktar għażliet li jeħtieġu li jkopru, jew forsi qegħdin jikkontrollaw numru ta 'LEDs jew komponenti oħra bl-IU.

Hawnhekk hawn eżempju li għażel zalza għal ordni:

mill-importazzjoni ta 'easygui * importazzjoni ħin msg = "Liema zalza tixtieq?" għażliet = ["Ħafif", "Hot", "Extra Hot"] reply = buttuna (msg, għażliet = għażliet) jekk tweġiba == "Ħafif": stampa tweġiba jekk tweġiba == "Hot": stampa tweġiba jekk risposta == "Extra Hot": stampa tweġiba

07 ta '10

Kaxxa ta 'għażla

Il-Kaxxa tal-Għażla hija kbira għal listi itwal ta 'oġġetti. Richard Saville

Buttuni huma kbar, iżda għal listi twal ta 'għażliet,' kaxxa ta 'l-għażla' tagħmel ħafna sens. Ipprova twaħħil 10 buttuni f'kaxxa u dalwaqt taqbel!

Dawn il-kaxxi jelenkaw l-għażliet disponibbli fir-ringieli wieħed wara l-ieħor, b'kaxja "OK" u "Ikkanċella" fuq in-naħa. Huma raġonevolment intelliġenti, li jagħżlu l-għażliet alfabetikament u li jippermettu wkoll li tagħfas ċavetta biex tiżdied għall-ewwel għażla ta 'dik l-ittra.

Hawn eżempju li juri għaxar ismijiet, li tista 'tara ġie magħżul fil-screenshot.

mill-importazzjoni ta 'easygui * importazzjoni ħin msg = "Min ħalli l-klieb barra?" titolu = għażliet "Klieb Nieqsa" [għażla] "Alex", "Kulur", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah" = għażla kaxxa (msg, titlu, għażliet)

08 ta '10

Kaxxa tad-Dħul tad-Data

Il- "Multenterbox" ihallik tiġbor id-dejta mill-utenti. Richard Saville

Il-formoli huma mod tajjeb ħafna biex jaqbdu d-data għall-proġett tiegħek, u EasyGUI għandha għażla "multenterbox" li jippermettilek li turi oqsma ttikkettati biex taqbad informazzjoni ma '.

Għal darb'oħra huwa każ ta 'oqsma ta' tikkettar u sempliċement jinqabad l-input. Għamilna eżempju hawn taħt għal formola sempliċi ta 'reġistrazzjoni ta' sħubija fil-ġinnasju.

Hemm għażliet biex tiżdied il-validazzjoni u karatteristiċi oħra avvanzati, li l-websajt EasyGUI tkopri fid-dettall.

minn easygui import * tim ta 'importazzjoni msg = "Informazzjoni tal-Membru" title = "Formola ta' Sħubija tal-Ġinnja" fieldNames = ["Isem", "Kunjom", "Età", "Piż"] fieldValues ​​= [] # il-valuri tal-bidu fieldValues ​​= multenterbox (msg, titlu, fieldsNames) print fieldValues

09 ta '10

Żieda ta 'Stampi

Żid immaġini f'kaxxi tiegħek għal mod ġdid sħiħ biex tuża l-GUI. Richard Saville

Tista 'żżid immaġni fuq l-interfaces EasyGUI tiegħek billi tinkludi ammont żgħir ħafna ta' kodiċi.

Ħlief immaġni għal Raspberry Pi tiegħek fl-istess direttorju bħall-iskritt EasyGUI tiegħek u agħmel nota tal-isem u l-estensjoni tal-fajl (per eżempju, image1.png).

Ejjew nużaw il-kaxxa tal-buttuna bħala eżempju:

mill-importazzjoni ta 'easygui * ħin ta' importazzjoni image = "RaspberryPi.jpg" msg = "Din hija Raspberry Pi?" għażliet = ["Iva", "Le"] reply = buttuna (msg, image = immaġni, għażliet = għażliet) jekk risposta == "Iva": print "Iva" inkella: print "Le"

10 ta '10

Karatteristiċi Aktar Avvanzati

Inti ma tistax tagħmel is-sistemi ta 'ħlas bl-EasyGUI, iżda tista' tieħdu gost nippretendu! Richard Saville

Imxejna l-għażliet bażiċi 'bażiċi' EasyGUI hawn biex tibda, madankollu, hemm ħafna aktar għażliet u eżempji ta 'kaxxi skond kemm tixtieq titgħallem, u dak li teħtieġ il-proġett tiegħek.

Kaxxi tal-password, kaxxi tal-kodiċi, u kaxex ta 'fajls anke huma disponibbli biex insemmu ftit. Huwa librerija versatili ħafna faċli li tinġabar f'minuti, b'xi possibbiltajiet kbar ta 'kontroll ta' hardware ukoll.

Jekk tixtieq titgħallem kif tikkodifika affarijiet oħra bħal Java, HTML jew aktar, hawnhekk huma l- aqwa riżorsi ta 'kodifikazzjoni onlajn disponibbli.