Menambah antara muka pengguna grafik (GUI) ke projek Raspberry Pi anda adalah cara yang baik untuk menyertakan skrin untuk kemasukan data, butang pada skrin untuk kawalan atau bahkan cara yang lebih bijak untuk menunjukkan bacaan dari komponen seperti sensor.
01 dari 10Buat Interface untuk Projek Anda
Terdapat beberapa kaedah GUI yang berbeza untuk Ras Raspberry Pi, namun kebanyakannya mempunyai lengkung pembelajaran yang curam.
Antaramuka Tkinter Python mungkin menjadi pilihan "go-to" untuk kebanyakan, namun pemula boleh berjuang dengan kerumitannya. Begitu juga, perpustakaan PyGame menawarkan pilihan untuk membuat antara muka yang mengagumkan tetapi mungkin lebihan kepada keperluan.
Jika anda sedang mencari antaramuka yang mudah dan cepat untuk projek anda, EasyGUI boleh menjadi jawapannya. Apa yang kurang dari keindahan grafinya lebih daripada membuat kesederhanaan dan kemudahan penggunaannya.
Artikel ini akan memberi anda pengenalan kepada perpustakaan, termasuk beberapa pilihan yang paling berguna yang kami dapati.
Continue Reading Below
02 dari 10Memuat turun dan Mengimport EasyGUI
Untuk artikel ini, kami menggunakan sistem operasi Raspbian yang standard.
Memasang perpustakaan akan menjadi proses biasa kepada kebanyakan, menggunakan kaedah "apt-get install". Anda memerlukan sambungan internet pada Raspberry Pi anda, menggunakan sambungan Ethernet atau WiFi yang berwayar.
Buka tetingkap terminal (ikon skrin hitam pada bar tugas Pi anda) dan masukkan arahan berikut:
apt-get install python-easygui
Perintah ini akan memuat turun perpustakaan dan memasangnya untuk anda, dan itu semua persediaan yang anda perlu buat. Continue Reading Below EasyGUI perlu diimport ke skrip sebelum anda boleh menggunakan fungsinya. Ini dicapai dengan memasukkan satu baris di bahagian atas skrip anda dan adalah sama tanpa mengira pilihan antara muka EasyGUI yang anda gunakan. Buat skrip baru dengan memasukkan arahan berikut dalam tetingkap terminal anda: sudo nano easygui.py
Skrin kosong akan muncul - ini adalah fail kosong anda (nano hanyalah nama editor teks). Untuk mengimport EasyGUI ke skrip anda, masukkan baris berikut: dari import mudah *
Kami menggunakan versi import ini untuk membuat pengekodan lebih mudah kemudiannya. Contohnya, apabila mengimport eway ini, bukannya perlu menulis 'easygui.msgbox' kita boleh menggunakan "msgbox." Sekarang mari kita tutup beberapa pilihan antara muka utama dalam EasyGUI. Kotak mesej ini, dalam bentuk yang paling sederhana, memberikan pengguna teks baris dan satu butang untuk mengklik. Berikut adalah contoh untuk cuba - masukkan baris berikut selepas garisan import anda, dan simpan menggunakan Ctrl + X: msgbox ("Peti sejuk huh?", "Saya Peti Mesej")
Untuk menjalankan skrip, gunakan arahan berikut: sudo python easygui.py
Anda harus melihat kotak mesej muncul, dengan Saya adalah Kotak Mesej ditulis di bar atas, dan Peti sejuk huh? di atas butang. Continue Reading Below Kadang-kadang anda memerlukan pengguna untuk mengesahkan tindakan atau memilih sama ada atau tidak untuk meneruskan. Kotak "ccbox" menawarkan baris teks yang sama sebagai kotak mesej asas di atas, tetapi menyediakan 2 butang - Teruskan dan Batalkan. Berikut adalah contoh satu yang digunakan, dengan butang percetakan yang berterusan dan batal ke terminal. Anda boleh menukar tindakan selepas setiap butang tekan untuk melakukan apa sahaja yang anda suka: dari import mudah *masa importmsg = "Adakah anda mahu meneruskan?"title = "Continue?"jika ccbox (msg, tajuk): # tunjukkan dialog Teruskan / Batalkan mencetak "Pengguna dipilih terus" # Tambah perintah lain di sini lain: # pengguna memilih Batal cetak "Pengguna dibatalkan" # Tambah perintah lain di sini 06 dari 10 Jika pilihan kotak terbina dalam tidak memberi anda apa yang anda perlukan, anda boleh membuat kotak butang tersuai menggunakan ciri "kotak". Ini hebat jika anda mempunyai lebih banyak pilihan yang perlu meliputi, atau mungkin mengawal sejumlah LED atau komponen lain dengan UI. Berikut adalah contoh memilih sos untuk pesanan: dari import mudah *import time msg = "Yang mana sos yang anda suka?"pilihan = "Mild", "Hot", "Extra Hot"reply = buttonbox (msg, choices = choices) jika reply == "Mild": jawapan cetakjika jawapan == "Panas": jawapan cetakjika jawapan == "Extra Hot": jawapan cetak
Continue Reading Below Butang besar, tetapi untuk senarai panjang pilihan, "kotak pilihan" membuat banyak akal. Cuba muat 10 butang dalam kotak dan anda akan bersetuju! Kotak ini menyenaraikan pilihan yang tersedia dalam baris satu demi satu, dengan kotak 'OK' dan 'Batal' ke tepi. Mereka cukup pintar, menyusun pilihan mengikut abjad dan juga membolehkan anda menekan kekunci untuk melompat ke pilihan pertama surat itu. Berikut adalah contoh yang menunjukkan sepuluh nama, yang anda dapat lihat telah disusun dalam tangkapan skrin. dari import mudah *masa importmsg = "Siapa yang membiarkan anjing keluar?"title = "Missing Dogs"pilihan = "Alex", "Cat", "Michael", "James", "Albert", "Phil", "Yasmin", "Frank", "Tim", "Hannah"pilihan = choicebox (msg, tajuk, pilihan) 08 dari 10 Bentuk adalah cara yang baik untuk menangkap data untuk projek anda, dan EasyGUI mempunyai pilihan 'multenterbox' yang membolehkan anda memperlihatkan bidang berlabel untuk menangkap maklumat dengan. Sekali lagi ia adalah kes bidang pelabelan dan hanya menangkap input. Kami telah membuat contoh di bawah untuk borang pendaftaran keahlian gym yang sangat mudah. Terdapat pilihan untuk menambah pengesahan dan ciri-ciri canggih lain, yang meliputi laman web EasyGUI secara terperinci. dari import mudah *masa importmsg = "Maklumat Ahli"title = "Borang Keahlian Gim"fieldNames = "Nama Pertama", "Nama Keluarga", "Umur", "Berat"fieldValues = # nilai permulaanfieldValues = multenterbox (msg, tajuk, medanName)nilai medan cetak Continue Reading Below Anda boleh menambah imej pada antara muka EasyGUI dengan memasukkan sejumlah kecil kod. Simpan imej ke Raspberry Pi anda dalam direktori yang sama dengan skrip EasyGUI anda dan buat nota nama dan pelanjutan fail (contohnya, image1.png ). Mari gunakan kotak butang sebagai contoh: dari import mudah *masa importimage = "RaspberryPi.jpg"msg = "Adakah ini Ras Raspberry?"pilihan = "Ya", "Tidak"reply = buttonbox (msg, image = image, choices = choices)jika jawapan == "Ya": cetak "Ya"lain: cetak "Tidak" 10 daripada 10 Kami telah membentangkan pilihan utama "asas" EasyGUI di sini untuk membuat anda bermula, bagaimanapun, terdapat lebih banyak pilihan kotak dan contoh yang tersedia bergantung pada berapa banyak yang anda ingin pelajari, dan apa yang diperlukan oleh projek anda. Kotak kata laluan, kotak kod, dan kotak fail juga tersedia untuk menamakan beberapa. Ia adalah perpustakaan yang sangat serba boleh yang mudah dijemput dalam beberapa minit, dengan beberapa kemungkinan kawalan perkakasan yang hebat juga. Sekiranya anda ingin mempelajari cara mengodkan perkara lain seperti Java, HTML atau lebih, anda dapat melihat sumber pengekodan dalam talian terbaik yang tersedia. Import EasyGUI
Kotak Mesej Asas
Teruskan atau Batalkan Kotak
Kotak Butang Tersuai
Kotak Pilihan
Kotak Kemasukan Data
Menambah Imej
Ciri-ciri Lanjutan