Bilah Kemajuan Tkinter

Bilah Kemajuan Tkinter



Anda dapat memperbarui klien tentang status proses yang panjang dengan widget bilah kemajuan. Tujuan widget adalah untuk memberikan kepercayaan kepada pengguna bahwa sesuatu sedang terjadi. Ini memiliki dua mode operasi yang berbeda. Saat dalam mode tertentu, widget menampilkan indikasi yang bergerak ke arah yang telah ditentukan. Widget dipindahkan dalam keadaan tak tentu untuk memungkinkan klien mendapat kesan bahwa sesuatu sedang terjadi. Sinyal berosilasi bolak-balik di antara ujung widget di seluruh gaya ini. Penggunaan progress bar determinate dan indeterminate dalam Python akan dibahas dalam tutorial ini.

Mari kita mulai dengan konfigurasi perpustakaan Tkinter Python. Setelah peluncuran terminal berhasil, coba kueri berikut untuk mengonfigurasi paket Tkinter. Pastikan Python sudah terinstal sebelum menggunakan instruksi ini.

$ sudo apt install python3-tk







Contoh 1

Mari kita mulai dengan contoh Python pertama kita untuk menggunakan modul Tkinter untuk membuat progress bar tertentu di GUI-nya. Jadi, kami telah membuat file Python baru bernama 'new.py' dan menambahkan kode berikut. Kami memulai kode ini dengan mengimpor semua objek anak dari pustaka Tkinter Python pada baris pertama. Setelah itu, kami mengimpor objek kelas 'ttk' dari modul Tkinter di baris kode kedua.



Konstruktor kelas Tk() telah dipanggil dan menyimpan objeknya dalam variabel “t”. Fungsi 'judul' telah dicapai dengan variabel objek 't' untuk membuat judul untuk GUI. Ukuran jendela GUI Tkinter telah diatur ke “300×200” melalui fungsi geometri(). Bilah kemajuan akan dihasilkan oleh fungsi yang ditentukan pengguna “Pbar()”. Kami akan melihat fungsi ini di bagian akhir artikel ini.



Kami telah membuat variabel 'p' di 8 th baris kode Python ini yang telah menggunakan fungsi Progressbar() melalui objek kelas “ttk” untuk membuat bilah kemajuan di layar GUI. Objek 't' telah diteruskan ke sana sementara orientasinya telah diatur ke Horizontal, panjangnya diatur ke 400, dan modenya ditentukan, yaitu, ia akan bergerak ke arah tertentu saja. Padding sumbu 'y' telah disetel ke 30 dengan menggunakan fungsi 'pack()' untuk bilah kemajuan ini.





Setelah ini, kami telah membuat tombol baru 'b' dengan menggunakan fungsi Button() dan meneruskannya ke objek 't', beberapa teks, dan perintah yang akan dieksekusi setelah mengklik tombol, yaitu, fungsi yang disebut fungsi 'Pbar'. Fungsi Pbar() akan menambah nilai progress bar “p” sebanyak sepuluh dan kembali ke variabel “b”. Bantalan sumbu 'y' untuk tombol telah disetel ke '10' menggunakan fungsi pack(), dan fungsi mainloop() di sini untuk mengulang seluruh eksekusi.



Setelah menyelesaikan kode Python, kami menyimpannya dan mengeksekusinya di konsol melalui kueri 'python3' diikuti dengan nama file 'new.py':

$ python3 new.py

Ini telah meluncurkan GUI Tkinter Python dengan judul 'Progress Bar' di layar konsol kami. Pada gambar berikut, hanya ada bilah kemajuan tanpa pemrosesan. Anda harus menekan tombol terlebih dahulu.

Setelah mengetuk tombol, “Tap here!”, bilah progres berwarna biru telah ditampilkan sebagai berikut:

Setelah tiga klik berturut-turut, kami menerima kemajuan berikut tanpa gerakan:

Setelah mencapai akhir bilah kemajuan, kami tidak dapat bergerak lebih jauh, yaitu, bilah kemajuan yang ditentukan.

Contoh 2

Mari kita lihat cara membuat bilah kemajuan tak tentu yang dapat bergerak mundur dan maju dalam area kemajuan menggunakan modul Tkinter GUI Python. Jadi, kami telah memulai kode Python ini dengan mengimpor modul Tkinter sebagai “tk” dan objek ttk dari kelas “ttk”. Objek tk telah dibuang untuk mendapatkan hasil konstruktor 'Tk()' dan disimpan ke variabel 't'.



Variabel “t” telah digunakan dengan fungsi title() untuk menambahkan judul GUI di samping fungsi geometri() untuk menentukan ukuran jendela GUI yang akan ditampilkan. Fungsi grid() telah dipanggil dengan variabel “t” untuk mengatur GUI dalam format tabel.

Setelah itu, kita telah menggunakan variabel “p” untuk membuat progress bar melalui fungsi Progressbar() dari objek kelas ttk dengan variabel “t” yang sama, orientasi horizontal, panjang 300, dan mode tak tentu. Bilah kemajuan telah diatur dalam bentuk tabel melalui fungsi 'grid()' yang telah menggunakan bantalan khusus untuk sumbu 'x' dan 'y'. Kami telah membuat dua tombol, 's' dan 'e', untuk memulai pergerakan bilah kemajuan, mengakhirinya, dan memindahkannya maju mundur.







Parameter lengket dari fungsi grid() untuk kedua tombol menentukan arah, yaitu, Timur dan Barat. Perintah, 'mulai' dan 'berhenti', telah diatur untuk kedua tombol di 9 th dan 11 th garis. Dengan eksekusi fungsi mainloop(), program kita telah selesai dan siap digunakan setelah disimpan.





Eksekusi dilakukan dengan cara serupa.





$ python3 new.py

Pada GUI diluncurkan, layar berikut telah disajikan:



Setelah menekan tombol 'Ketuk untuk Mulai', bilah kemajuan mulai bergerak maju.

Setelah mencapai ujung, ia bergerak ke arah yang berlawanan, yaitu Barat.

Setelah selesai mengetuk tombol 'Ketuk untuk Berhenti', bilah kemajuan telah disetel kembali ke posisi awal.

Kesimpulan

Artikel ini menunjukkan penggunaan bilah kemajuan di GUI Tkinter. Kami hanya menggunakan objek dari kelas Tkinter untuk memanggil widget yang berbeda untuk membuat GUI Python lebih interaktif. Kami telah membahas menggunakan bilah kemajuan pasti dan tak tentu dalam contoh kami. Kami harap Anda menikmati penerapan ini.