ເຮັດໃຫ້ GUI ງ່າຍໆດ້ວຍ Raspberry Pi ໂດຍໃຊ້ EasyGUI

ການເພີ່ມການໂຕ້ຕອບຜູ້ໃຊ້ແບບກາຟິກ (GUI) ກັບໂຄງການ Raspberry Pi ຂອງທ່ານແມ່ນເປັນວິທີທີ່ດີທີ່ຈະປະກອບຫນ້າຈໍສໍາລັບການເຂົ້າຂໍ້ມູນ, ປຸ່ມຫນ້າຈໍສໍາລັບການຄວບຄຸມຫຼືແມ້ກະທັ້ງວິທີທີ່ສະຫລາດທີ່ຈະສະແດງຂໍ້ມູນຈາກສ່ວນປະກອບເຊັ່ນ sensors.

01 of 10

ເຮັດໃຫ້ການໂຕ້ຕອບສໍາລັບໂຄງການຂອງທ່ານ

EasyGUI ແມ່ນໂຄງການທີ່ລວດໄວແລະງ່າຍດາຍທີ່ຈະລອງທ້າຍອາທິດນີ້. Richard Saville

ມີຈໍານວນວິທີການ GUI ຕ່າງໆທີ່ມີຢູ່ສໍາລັບ Raspberry Pi, ຢ່າງໃດກໍຕາມ, ສ່ວນຫຼາຍແມ່ນເສັ້ນໂຄ້ງການຮຽນຮູ້ທີ່ຂ້ອນຂ້າງ.

ການໂຕ້ຕອບ Tkinter Python ອາດຈະເປັນຕົວເລືອກ 'ໄປະ' ທີ່ເຫມາະສົມສໍາລັບສ່ວນໃຫຍ່, ແຕ່ຜູ້ເລີ່ມສາມາດຕໍ່ສູ້ກັບຄວາມສັບສົນຂອງມັນ. ເຊັ່ນດຽວກັນ, ຫໍສະຫມຸດ PyGame ສະເຫນີທາງເລືອກໃນການເຮັດໃຫ້ມີການໂຕ້ຕອບທີ່ຫນ້າປະທັບໃຈແຕ່ອາດຈະມີຄວາມຕ້ອງການຫລາຍເກີນໄປ.

ຖ້າທ່ານກໍາລັງຊອກຫາການໂຕ້ຕອບແບບງ່າຍດາຍແລະໄວສໍາລັບໂຄງການຂອງທ່ານ, EasyGUI ສາມາດເປັນຄໍາຕອບ. ສິ່ງທີ່ມັນຂາດໃນຄວາມງາມຮູບພາບມັນຫຼາຍກວ່າເຮັດໃຫ້ສໍາລັບໃນຄວາມງ່າຍດາຍແລະຄວາມງ່າຍຂອງການນໍາໃຊ້.

ບົດຄວາມນີ້ຈະໃຫ້ທ່ານແນະນໍາກ່ຽວກັບຫ້ອງສະຫມຸດ, ລວມທັງບາງທາງເລືອກທີ່ມີປະໂຫຍດທີ່ສຸດທີ່ພວກເຮົາພົບ.

02 of 10

ດາວໂຫລດແລະນໍາເຂົ້າ EasyGUI

ການຕິດຕັ້ງ EasyGUI ແມ່ນງ່າຍດາຍທີ່ມີວິທີການ 'apt-get install'. Richard Saville

ສໍາລັບບົດຄວາມນີ້, ພວກເຮົາກໍາລັງໃຊ້ລະບົບປະຕິບັດການ Raspbian ມາດຕະຖານທີ່ມີຢູ່ທີ່ນີ້.

ການຕິດຕັ້ງຫ້ອງສະຫມຸດຈະເປັນຂະບວນການທີ່ຄຸ້ນເຄີຍກັບສ່ວນໃຫຍ່, ໂດຍໃຊ້ວິທີ 'apt-get install'. ທ່ານຈະຕ້ອງການເຊື່ອມຕໍ່ອິນເຕີເນັດກ່ຽວກັບ Raspberry Pi ຂອງທ່ານໂດຍໃຊ້ສາຍ Ethernet ຫຼືເຊື່ອມຕໍ່ WiFi.

ເປີດ window terminal (ໄອຄອນຂອງຫນ້າຈໍສີດໍາໃນແຖບ taskbar ຂອງທ່ານ) ແລະໃສ່ຄໍາສັ່ງຕໍ່ໄປນີ້:

apt-get install python-easygui

ຄໍາສັ່ງນີ້ຈະດາວໂຫລດຫໍສະຫມຸດແລະຕິດຕັ້ງມັນສໍາລັບທ່ານ, ແລະນັ້ນກໍ່ແມ່ນການຕິດຕັ້ງທີ່ທ່ານຈໍາເປັນຕ້ອງເຮັດ.

03 of 10

Import EasyGUI

ການນໍາເຂົ້າ EasyGUI ໃຊ້ເວລາພຽງຫນຶ່ງເສັ້ນ. Richard Saville

EasyGUI ຕ້ອງໄດ້ຮັບການນໍາເຂົ້າເຂົ້າໄປໃນ script ກ່ອນທີ່ທ່ານຈະສາມາດນໍາໃຊ້ຫນ້າທີ່ຂອງຕົນ. ນີ້ແມ່ນບັນລຸໄດ້ໂດຍການປ້ອນເສັ້ນດຽວຢູ່ເທິງສຸດຂອງ script ຂອງທ່ານແລະແມ່ນຄືກັນບໍ່ວ່າຈະເປັນຕົວເລືອກການໂຕ້ຕອບ EasyGUI ທີ່ທ່ານໃຊ້.

ສ້າງ script ໃຫມ່ໂດຍການປ້ອນຄໍາສັ່ງຕໍ່ໄປນີ້ໃນຫນ້າຕ່າງຂອງ terminal ຂອງທ່ານ:

sudo nano easygpypy

ຫນ້າຈໍຫວ່າງຈະປາກົດ - ນີ້ແມ່ນໄຟລ໌ທີ່ເປົ່າຂອງທ່ານ (nano ແມ່ນພຽງແຕ່ຊື່ຂອງບັນນາທິການຫນັງສື). ການນໍາເຂົ້າ EasyGUI ເຂົ້າໄປໃນສະຄິບຂອງທ່ານໃສ່ບັນທັດຕໍ່ໄປນີ້:

ຈາກການນໍາເຂົ້າ easygui *

ພວກເຮົານໍາໃຊ້ຮຸ່ນສະເພາະຂອງການນໍາເຂົ້ານີ້ເພື່ອເຮັດໃຫ້ການຂຽນລະຫັດງ່າຍຕໍ່ໄປອີກ. ຕົວຢ່າງເຊັ່ນເມື່ອນໍາເຂົ້ານີ້, ແທນທີ່ຈະຂຽນ 'easygui.msgbox', ພວກເຮົາສາມາດໃຊ້ 'msgbox' ໄດ້.

ຕອນນີ້ໃຫ້ເອົາບາງສ່ວນຂອງຕົວເລືອກການໂຕ້ຕອບທີ່ສໍາຄັນໃນ EasyGUI.

04 of 10

Basic Message Box

ກ່ອງຂໍ້ຄວາມງ່າຍໆແມ່ນວິທີທີ່ດີທີ່ຈະເລີ່ມຕົ້ນດ້ວຍ EasyGUI. Richard Saville

ກ່ອງຂໍ້ຄວາມນີ້, ໃນແບບຟອມ simplest ຂອງຕົນ, ໃຫ້ຜູ້ໃຊ້ເສັ້ນເສັ້ນທາງຂອງຂໍ້ຄວາມແລະປຸ່ມດຽວເພື່ອໃຫ້ຄລິກໃສ່. ນີ້ແມ່ນຕົວຢ່າງທີ່ຈະພະຍາຍາມ - ກະລຸນາໃສ່ເສັ້ນດັ່ງຕໍ່ໄປນີ້ຫຼັງຈາກເສັ້ນການນໍາເຂົ້າຂອງທ່ານແລະບັນທຶກໂດຍໃຊ້ Ctrl + X:

msgbox ("ຕູ້ເຢັນເຢັນ?", "ຂ້ອຍເປັນກ່ອງຂໍ້ຄວາມ")

ເພື່ອດໍາເນີນ script, ໃຫ້ໃຊ້ຄໍາສັ່ງຕໍ່ໄປນີ້:

sudo python easyguipy

ທ່ານຄວນເບິ່ງກ່ອງຂໍ້ຄວາມທີ່ປາກົດ, ທີ່ມີ 'ຂ້ອຍເປັນກ່ອງຂໍ້ຄວາມ' ທີ່ຂຽນໄວ້ໃນແຖບເທິງແລະ 'Cool box huh?' ຂ້າງເທິງປຸ່ມ.

05 of 10

ສືບຕໍ່ຫຼືຍົກເລີກກ່ອງ

ຊ່ອງສືບຕໍ່ / ຍົກເລີກສາມາດເພີ່ມການຢັ້ງຢືນກັບໂຄງການຂອງທ່ານໄດ້. Richard Saville

ບາງຄັ້ງທ່ານຈໍາເປັນຕ້ອງໃຫ້ຜູ້ໃຊ້ຢືນຢັນການປະຕິບັດຫຼືເລືອກທີ່ຈະສືບຕໍ່. ກ່ອງ 'ccbox' ສະຫນອງເສັ້ນຂໍ້ດຽວກັນເປັນກ່ອງຂໍ້ຄວາມພື້ນຖານຂ້າງເທິງ, ແຕ່ໃຫ້ 2 ປຸ່ມ - 'ສືບຕໍ່' ແລະ 'ຍົກເລີກ'.

ຕໍ່ໄປນີ້ແມ່ນຕົວຢ່າງຫນຶ່ງໃນການນໍາໃຊ້, ມີການສືບຕໍ່ແລະຍົກເລີກການພິມປຸ່ມກັບປາຍທາງ. ທ່ານສາມາດປ່ຽນແປງການປະຕິບັດຫຼັງຈາກກົດປຸ່ມແຕ່ລະເພື່ອເຮັດສິ່ງທີ່ທ່ານຕ້ອງການ:

ຈາກການນໍາເຂົ້າ easygui * ເວລານໍາເຂົ້າ msg = "ທ່ານຢາກຈະສືບຕໍ່?" title = "ສືບຕໍ່?" ຖ້າ ccbox (msg, title): # ສະແດງໃຫ້ເຫັນການສືບຕໍ່ / ຍົກເລີກການພິມພິມ "ຜູ້ທີ່ເລືອກສືບຕໍ່" # ເພີ່ມຄໍາສັ່ງອື່ນທີ່ນີ້: # ຜູ້ໃຊ້ເລືອກຍົກເລີກການພິມ "ຜູ້ໃຊ້ຖືກຍົກເລີກ"

06 of 10

Custom Button Box

ປຸ່ມ 'ປຸ່ມ' ຊ່ວຍໃຫ້ທ່ານສາມາດເຮັດໃຫ້ຕົວເລືອກປຸ່ມ custom ໄດ້. Richard Savlle

ຖ້າຫາກວ່າທາງເລືອກໃນການກໍ່ສ້າງໃນບໍ່ເຫມາະສົມແມ່ນສິ່ງທີ່ທ່ານຕ້ອງການ, ທ່ານສາມາດສ້າງກ່ອງປຸ່ມທີ່ກໍານົດເອງໂດຍໃຊ້ຄຸນສົມບັດ "ປຸ່ມ".

ນີ້ແມ່ນສິ່ງທີ່ດີຖ້າທ່ານມີທາງເລືອກຫຼາຍທີ່ຕ້ອງການປົກຫຸ້ມ, ຫຼືບາງທີອາດມີການຄວບຄຸມຈໍານວນໄຟ LED ຫຼືອຸປະກອນອື່ນໆທີ່ມີ UI.

ນີ້ແມ່ນຕົວຢ່າງການເລືອກຊອດສໍາລັບຄໍາສັ່ງ:

ຈາກການນໍາເຂົ້າ easygui * ເວລານໍາເຂົ້າ msg = "ທ່ານຕ້ອງການຫຍັງແດ່?" ການເລືອກ = ["ອ່ອນ", "ຮ້ອນ", "ຮ້ອນຮ້ອນ"] reply = buttonbox (msg, options = options) ຖ້າຕອບ == "ອ່ອນ": ພິມຕອບຖ້າຕອບ == "ຮ້ອນ": ພິມຕອບຖ້າຕອບ == "Extra Hot": ພິມຕອບ

07 of 10

ກ່ອງທາງເລືອກ

ກ່ອງທາງເລືອກແມ່ນດີເລີດສໍາລັບລາຍະການທີ່ມີລາຍະການຕໍ່ໄປອີກແລ້ວ. Richard Saville

ປຸ່ມແມ່ນດີ, ແຕ່ສໍາລັບທາງເລືອກທີ່ຍາວນານ, 'ກ່ອງເລືອກ' ເຮັດໃຫ້ມີຄວາມຮູ້ສຶກຫຼາຍ. ພະຍາຍາມໃຫ້ເຫມາະສົມກັບ 10 ປຸ່ມໃນປ່ອງແລະທ່ານຈະເຫັນດີໃນທັນທີ!

ກ່ອງເຫຼົ່ານີ້ບອກຕົວເລືອກທີ່ມີຢູ່ໃນແຖວຫນຶ່ງຫຼັງຈາກທີ່ອື່ນ, ມີກ່ອງ 'OK' ແລະ 'ຍົກເລີກ' ຢູ່ຂ້າງ. ພວກເຂົາກໍາລັງສະຫລາດຢ່າງສົມເຫດສົມຜົນ, ຄັດເລືອກຕົວອັກສອນຕາມຕົວຫນັງສືແລະຍັງໃຫ້ທ່ານກົດປຸ່ມເພື່ອໄປຫາຕົວເລືອກທໍາອິດຂອງຈົດຫມາຍນັ້ນ.

ນີ້ແມ່ນຕົວຢ່າງທີ່ສະແດງສິບຊື່, ເຊິ່ງທ່ານສາມາດເບິ່ງໄດ້ຖືກຈັດຮຽງຢູ່ໃນຫນ້າຈໍ.

ຈາກການນໍາເຂົ້າ easygui * ເວລານໍາເຂົ້າ msg = "ໃຜຈະປ່ອຍຫມາອອກ?" title = "Missing Dogs" = ["Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah" = choicebox (msg, title, options)

08 of 10

Data Entry Box

'Multenterbox' ຊ່ວຍໃຫ້ທ່ານເກັບຂໍ້ມູນຈາກຜູ້ໃຊ້. Richard Saville

ແບບຟອມແມ່ນວິທີການທີ່ດີທີ່ຈະເກັບຂໍ້ມູນສໍາລັບໂຄງການຂອງທ່ານແລະ EasyGUI ມີທາງເລືອກ 'multenterbox' ເຊິ່ງຊ່ວຍໃຫ້ທ່ານສາມາດສະແດງເຂດຂໍ້ມູນທີ່ມີປ້າຍຊື່ເພື່ອເກັບຂໍ້ມູນ.

ອີກເທື່ອຫນຶ່ງມັນເປັນກໍລະນີຂອງສະຫນາມເຈ້ຍແລະພຽງແຕ່ຈັບເອົາຂໍ້ມູນໃສ່. ພວກເຮົາໄດ້ເປັນຕົວຢ່າງຕໍ່ໄປນີ້ສໍາລັບແບບຟອມສະຫມັກສະມາຊິກແບບແຂກງ່າຍໆ.

ມີທາງເລືອກໃນການເພີ່ມການກວດສອບແລະລັກສະນະພິເສດອື່ນໆທີ່ເວັບໄຊທ໌ EasyGUI ກວມເອົາລາຍລະອຽດ.

ຈາກການນໍາເຂົ້າ easygui * ເວລາການນໍາເຂົ້າ msg = "ຂໍ້ມູນສະມາຊິກ" ຊື່ = "ແບບຟອມສະມາທິທີ່ມີຊື່ຫຼິ້ນ" fieldNames = ["ຊື່ທໍາອິດ", "ຊື່", "ອາຍຸ", "ນ້ໍາຫນັກ"] fieldValues ​​= [] # ຄ່າເລີ່ມຕົ້ນ fieldValues ​​= multenterbox (msg, title, fieldNames) print fieldValues

09 of 10

ເພີ່ມຮູບພາບ

ເພີ່ມຮູບພາບໃສ່ກ່ອງຂອງທ່ານສໍາລັບວິທີໃຫມ່ໆທີ່ຈະໃຊ້ GUI. Richard Saville

ທ່ານສາມາດເພີ່ມຮູບພາບເຂົ້າໃນອິນເຕີເຟດ EasyGUI ຂອງທ່ານໂດຍປະກອບມີຈໍານວນເງິນທີ່ມີຂະຫນາດນ້ອຍຫຼາຍ.

ຊ່ວຍປະຢັດຮູບພາບເຂົ້າກັບ Raspberry Pi ຂອງທ່ານໃນລະບົບດຽວກັນກັບ script EasyGUI ຂອງທ່ານແລະເຮັດໃຫ້ບັນທຶກຊື່ແລະນາມສະກຸນໄຟລ໌ (ຍົກຕົວຢ່າງ, image1.png).

ໃຫ້ໃຊ້ກ່ອງປຸ່ມເປັນຕົວຢ່າງ:

ຈາກການນໍາເຂົ້າ easygui * ເວລານໍາເຂົ້າຮູບພາບ = "RaspberryPi.jpg" msg = "ນີ້ແມ່ນ Raspberry Pi?" = "Yes": print "Yes" else: print "No"

10 ຈາກ 10

More Features Advanced

ທ່ານບໍ່ສາມາດສ້າງລະບົບການຈ່າຍເງິນດ້ວຍ EasyGUI, ແຕ່ທ່ານສາມາດມີຄວາມມ່ວນຊື່ນ!! Richard Saville

ພວກເຮົາໄດ້ກວມເອົາຕົວເລືອກ EasyGUI 'ພື້ນຖານ' ທີ່ສໍາຄັນທີ່ນີ້ເພື່ອໃຫ້ທ່ານເລີ່ມຕົ້ນແຕ່ຢ່າງໃດກໍ່ຕາມ, ມີຫລາຍທາງເລືອກອື່ນແລະຕົວຢ່າງທີ່ສາມາດເຮັດໄດ້ຂຶ້ນກັບຈໍານວນທີ່ທ່ານຕ້ອງການຮຽນຮູ້ແລະສິ່ງທີ່ໂຄງການຂອງທ່ານຕ້ອງການ.

ກ່ອງລະຫັດຜ່ານ, ກ່ອງລະຫັດ, ແລະກ່ອງໄຟລ໌ຕ່າງໆກໍ່ສາມາດໃຊ້ໄດ້ເພື່ອຊື່ບາງຄົນ. ມັນເປັນຫໍສະຫມຸດທີ່ມີປະສິດທິພາບຫຼາຍທີ່ງ່າຍທີ່ຈະເລືອກເອົາໃນແຕ່ລະນາທີ, ດ້ວຍຄວາມເປັນໄປໄດ້ໃນການຄວບຄຸມຮາດແວທີ່ດີ.

ຖ້າທ່ານຕ້ອງການຮຽນຮູ້ວິທີການລະຫັດອື່ນ ໆ ເຊັ່ນ Java, HTML ຫຼືຫຼາຍກວ່ານີ້, ນີ້ແມ່ນ ຊັບພະຍາກອນລະຫັດໃນລະບົບອອນລາຍທີ່ດີທີ່ສຸດທີ່ ມີຢູ່.