Mae ychwanegu rhyngwyneb defnyddiwr graffigol (GUI) i'ch prosiect Cig Mwg yn ffordd wych o gynnwys sgrin ar gyfer cofnodi data, botymau ar y sgrîn ar gyfer rheolaethau neu hyd yn oed ffordd fwy craffach i ddangos darlleniadau o gydrannau fel synwyryddion.
01 o 10
Gwnewch Rhyngwyneb ar gyfer eich Prosiect
Mae yna nifer o wahanol ddulliau GUI ar gael ar gyfer y Mws Mafon, fodd bynnag, mae gan y mwyafrif gromlin ddysgu serth.
Efallai mai rhyngwyneb Tkinter Python yw'r opsiwn 'mynd i' ddiffygiol, ond gall y dechreuwyr frwydro â'i gymhlethdod. Yn yr un modd, mae llyfrgell PyGame yn cynnig opsiynau ar gyfer gwneud rhyngwynebau trawiadol ond efallai y bydd y gofynion yn weddill.
Os ydych chi'n chwilio am ryngwyneb syml a chyflym ar gyfer eich prosiect, gallai EasyGUI fod yn ateb. Yr hyn sydd heb ei harddwch graffigol yn fwy na'i wneud yn ei symlrwydd a'i hawdd i'w ddefnyddio.
Bydd yr erthygl hon yn rhoi cyflwyniad i chi i'r llyfrgell, gan gynnwys rhai o'r opsiynau mwyaf defnyddiol yr ydym wedi'u canfod.
02 o 10
Lawrlwytho ac Mewnforio EasyGUI
Ar gyfer yr erthygl hon, rydym yn defnyddio'r system weithredu Raspbian safonol sydd ar gael yma.
Bydd gosod y llyfrgell yn broses gyfarwydd i'r rhan fwyaf, gan ddefnyddio'r dull 'apt-get install'. Bydd angen cysylltiad rhyngrwyd arnoch ar eich Mws Môr, gan ddefnyddio cysylltiad Ethernet neu WiFi â gwifrau.
Agor ffenestr derfynell (eicon sgrin du ar bar tasgau Pi) a rhowch y gorchymyn canlynol:
apt-get install python-easyguiBydd y gorchymyn hwn yn lawrlwytho'r llyfrgell a'i osod ar eich cyfer chi, a dyna'r holl setliad y mae angen i chi ei wneud.
03 o 10
Mewnforio EasyGUI
Mae angen i EasyGUI gael ei fewnforio i sgript cyn y gallwch ddefnyddio ei swyddogaethau. Cyflawnir hyn trwy fynd i un llinell ar frig eich sgript ac yr un peth waeth pa opsiynau rhyngwyneb EasyGUI rydych chi'n eu defnyddio.
Creu sgript newydd trwy fynd i mewn i'r gorchymyn canlynol yn eich ffenestr derfynell:
sudo nano easygui.pyBydd sgrin wag yn ymddangos - dyma'ch ffeil wag (dim ond enw golygydd testun yw nano). I fewnforio EasyGUI i mewn i'ch sgript, rhowch y llinell ganlynol:
o fewnforio easygui *Defnyddiwn y fersiwn benodol hon o'r mewnforio i wneud codio hyd yn oed yn haws yn hwyrach. Er enghraifft, wrth fewnforio hyn, yn hytrach na gorfod ysgrifennu 'easygui.msgbox', gallwn ddefnyddio 'msgbox'.
Nawr gadewch i ni gynnwys rhai o'r opsiynau rhyngwyneb allweddol o fewn EasyGUI.
04 o 10
Blwch Neges Sylfaenol
Mae'r blwch neges hwn, yn ei ffurf symlaf, yn rhoi llinell destun i'r defnyddiwr ac un botwm i glicio. Dyma enghraifft i geisio - nodwch y llinell ganlynol ar ôl eich llinell fewnforio, ac arbedwch gan ddefnyddio Ctrl + X:
msgbox ("Cool box huh?", "Rwy'n Blychau Neges")I redeg y sgript, defnyddiwch y gorchymyn canlynol:
sudo python easygui.pyDylech weld blwch neges yn ymddangos, gyda 'Rwy'n Blychau Neges' wedi'i ysgrifennu yn y bar uchaf, a 'Cool box huh?' uwchben y botwm.
05 o 10
Parhewch neu Dileu Blwch
Weithiau bydd angen i'r defnyddiwr gadarnhau gweithred neu ddewis a ddylid parhau ai peidio. Mae'r blwch 'ccbox' yn cynnig yr un llinell o destun fel y blwch neges sylfaenol uchod, ond mae'n darparu 2 botymau - 'Parhau' a 'Diddymu'.
Dyma enghraifft o un sy'n cael ei ddefnyddio, gyda'r botymau parhau a chanslo yn argraffu i'r derfynell. Gallech newid y gweithredu ar ôl pob botwm i wneud beth bynnag yr hoffech:
o easygui mewnforio * amser mewnforio msg = "Hoffech chi barhau?" title = "Parhau?" os ccbox (msg, title): # dangoswch Parhau / Diddymu deialog print "Dewiswyd y defnyddiwr i barhau" # Ychwanegwch orchmynion eraill yma: Dewisodd y defnyddiwr # Canslo print "Defnyddiwr wedi'i ganslo" # Ychwanegwch orchmynion eraill yma06 o 10
Blwch Botwm Custom
Os nad yw'r opsiynau bocs a adeiladwyd yn eithaf yn rhoi'r hyn sydd ei angen arnoch chi, gallwch greu blwch botwm arfer gan ddefnyddio'r nodwedd 'bocs botwm'.
Mae hyn yn wych os oes gennych fwy o opsiynau sydd angen eu cwmpasu, neu efallai y byddwch yn rheoli nifer o LEDau neu gydrannau eraill gyda'r UI.
Dyma enghraifft o ddewis saws am orchymyn:
o easygui mewnforio * amser mewnforio msg = "Pa saws hoffech chi?" dewisiadau = ["Mild", "Hot", "Extra Hot"] reply = buttonbox (msg, choices = choices) if answer == "Mild": argraffu ateb os ateb == "Hot": argraffu ateb os ateb == "Ychwanegol Poeth": argraffu ateb07 o 10
Blwch Dewis
Mae'r botymau'n wych, ond ar gyfer rhestrau hir o opsiynau, mae 'blwch dewis' yn gwneud llawer o synnwyr. Rhowch gynnig ar osod 10 botymau mewn blwch a chytunwch yn fuan!
Mae'r blychau hyn yn rhestru'r opsiynau sydd ar gael mewn rhesi un ar ôl un arall, gyda blwch 'OK' a 'Diddymu' i'r ochr. Maent yn rhesymol yn smart, yn didoli'r opsiynau yn nhrefn yr wyddor a hefyd yn caniatáu i chi wasgu allwedd i neidio at yr opsiwn cyntaf o'r llythyr hwnnw.
Dyma enghraifft sy'n dangos deg enw, y gallwch chi eu gweld wedi cael eu didoli yn y sgrin.
o easygui mewnforio * amser mewnforio msg = "Pwy sy'n gadael y cŵn allan?" title = Dewisiadau "Colli Cwn" = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"] = dewis dewis (msg, teitl, dewisiadau)08 o 10
Blwch Mynediad Data
Mae ffurflenni'n ffordd wych o gasglu data ar gyfer eich prosiect, ac mae gan EasyGUI ddewis 'aml-bocs' sy'n eich galluogi i ddangos meysydd labelu i gasglu gwybodaeth.
Unwaith eto mae'n achos o feysydd labelu a dim ond dal y mewnbwn. Rydym wedi gwneud esiampl isod ar gyfer ffurflen arwyddo aelodaeth syml iawn yn y gampfa.
Mae yna opsiynau i ychwanegu dilysiad a nodweddion uwch eraill, y mae gwefan EasyGUI yn ymdrin â hwy yn fanwl.
o easygui mewnforio * amser mewnforio msg = "Gwybodaeth Aelod" title = "Ffurflen Aelodaeth Gymnas" fieldNames = ["Enw Cyntaf", "Cyfenw", "Oedran", "Pwysau"] fieldValues = [] # y maes gwerthoedd cychwynValues = multenterbox (msg, teitl, enwau maes) maes argraffu09 o 10
Ychwanegu Delweddau
Gallwch ychwanegu delweddau i'ch rhyngwynebau EasyGUI trwy gynnwys swm bach iawn o god.
Cadwch ddelwedd i'ch Mws Môr yn yr un cyfeiriadur â'ch sgript EasyGUI a nodwch enw'r enw ac estyniad (er enghraifft, image1.png).
Gadewch i ni ddefnyddio'r blwch botwm fel enghraifft:
o easygui mewnforio * delwedd amser mewnforio = "RaspberryPi.jpg" msg = "A yw hwn yn Mws Mafon?" dewisiadau = ["Ydw", "Nac ydw"] ateb = botwm botwm (msg, image = image, choices = choices) if answer == "Oes": argraffwch "Ydw" arall: argraffu "Nac ydw"10 o 10
Mwy o Nodweddion Uwch
Rydym wedi ymdrin â'r prif opsiynau 'sylfaenol' EasyGUI yma er mwyn i chi ddechrau, ond mae llawer mwy o ddewisiadau bocs ac enghreifftiau sydd ar gael yn dibynnu ar faint rydych chi eisiau ei ddysgu, a beth sydd ei angen ar eich prosiect.
Mae blychau cyfrinair, blychau cod, a blychau ffeiliau hyd yn oed ar gael i enwi ychydig. Mae'n llyfrgell amlbwrpas iawn sy'n hawdd ei godi mewn munudau, gyda rhai posibiliadau rheoli caledwedd gwych hefyd.
Os hoffech chi ddysgu sut i godio pethau eraill fel Java, HTML neu fwy, dyma'r adnoddau codio ar-lein gorau sydd ar gael.