Tkinter ComboBox

Tkinter Combobox



Pakej ttk, pengubahsuaian unik Python Tkinter, memperkenalkan komponen tambahan ini. Python Tkinter ComboBox mempamerkan setiap pilihan daripada menu lungsur 1 pada seketika. Ia mempunyai penampilan kontemporari, menjadikannya sesuai untuk lokasi di mana pendedahan adalah penting. Kemasukan alat ialah keupayaan kelas Python ComboBox. Akibatnya, ia menambah beberapa pilihan dan fungsi tambahan sambil juga mewarisi beberapa daripada kelas Kemasukan.

Widget penting yang boleh dilihat dalam beberapa program ialah ComboBox. Pengguna diberikan senarai alternatif untuk dipilih. Ia mempunyai beberapa nilai, dan hanya dipaparkan satu pada satu-satu masa. Tutorial hari ini akan merangkumi cara menggunakan ComboBox di Linux menggunakan Tkinter.

Contoh 1:

Mari mulakan dengan contoh pertama modul Tkinter dalam Python. Kami mencipta fail Python baharu dengan sambungan 'py' melalui konsol terminal. Selepas itu, anda boleh menggunakan mana-mana editor pilihan anda untuk membuka fail Python yang baru dijana daripada penjelajah fail. Kami memulakan kod Python ini dengan import perpustakaan Tkinter dalam kod bersama-sama dengan semua sub-objek, kelas dan entiti terbina dalamnya.







Kami mengimport objek ttknya untuk digunakan dalam kod. Pertama, kami memanggil fungsi Tk() Tkinter untuk menambah nilai baharu untuk objek “t”. Objek 't' digunakan untuk memanggil fungsi geometri untuk mencipta antara muka pengguna grafik '200×150'. Dalam contoh pertama ini, kami menggunakan kaedah 'bingkai()' Tkinter untuk mencipta bingkai GUI pada skrin konsol. Objek 'f' bingkai ditutup di sini menggunakan fungsi pek Tkinter().



Selepas ini, kami mencipta senarai 'l' jenis rentetan yang mengandungi sejumlah 5 nilai rentetan di dalamnya. Selepas ini, kami menggunakan objek Tkinter ttk untuk memanggil fungsi ComboBox Tkinter dalam bingkai 'f'. Senarai 'l' diserahkan kepadanya. ComboBox ini disimpan ke pembolehubah 'C'. Kami menetapkan label untuk ComboBox menggunakan fungsi 'set' dan membungkus ComboBox dengan padding yang tepat. Sekarang, kami melaksanakan fungsi mainloop() untuk melaksanakan keseluruhan program Tkinter.







Selepas melengkapkan skrip Python, kami menyimpan kod dengan Ctrl+S dan kembali ke konsol shell sistem Linux. Kami mencuba arahan Python3 dalam shell diikuti dengan nama fail Python untuk melaksanakan fail seperti yang dipaparkan dalam yang berikut:

$ python3 test.py



Selepas pelaksanaan pertanyaan, kami mendapat GUI Tkinter berikut pada skrin konsol kami dengan tajuk 'tk'. Skrin GUI mengandungi Kotak kombo, iaitu senarai juntai bawah, dengan tajuk 'Pilih 1 Warna' dan tanda segi tiga untuk membukanya.

Selepas mengetik pada tanda segi tiga, senarai juntai bawah yang panjang ditunjukkan dengan semua pilihan yang tersedia. Anda dapat melihat bahawa kami mempunyai sejumlah 5 pilihan yang tersedia untuk dipilih.

Katakan, anda memilih warna 'Hitam' daripada senarai juntai bawah. Anda akan melihat bahawa warna yang dipilih ditunjukkan pada kawasan tajuk ComboBox drop-down. Senarai yang tinggal disembunyikan.

Contoh 2:

Mari kita lihat contoh lain menggunakan kaedah berbeza untuk mencipta ComboBox dalam Tkinter kali ini. Oleh itu, kami memulakan kod Python ini dengan import modul Tkinter dalam fail Python yang sama seperti 'tk' bersama-sama dengan mengimport kelas ttknya. Selepas itu, kami mengimport fungsi showinfo() daripada kelas kotak mesej modul Tkinter. Selain itu, kami mengimport pembolehubah month_name daripada modul kalendar Python.

Kami memanggil fungsi tk() dengan objek tk modul Tkinter dan menyimpan hasil pembina dalam pembolehubah 't'. Fungsi geometri dipanggil dengan parameter tertentu untuk mencipta GUI Tkinter dengan saiz tertentu. Fungsi tajuk() dipanggil dengan parameter 'Ilustrasi Kotak Kombo' untuk menamakan GUI Tkinter dan fungsi Label daripada kelas ttk untuk mencipta label 'l'. Fungsi pek digunakan untuk mengisi label 'l'. Pembolehubah 'mn' dicipta dengan fungsi StringVar() kelas 'tk'. ComboBox 'mcb' dicipta menggunakan fungsi ComboBox dan teks berubah 'mn'. ComboBox mcb diisi dengan nilai rentetan sehingga 13 melalui pembolehubah nama_bulan yang digunakan dalam gelung 'untuk'.

Keadaan untuk ComboBox 'mcb' ditetapkan kepada baca sahaja dan ia dibungkus. Fungsi choose() dicipta untuk memanggil fungsi showinfo() untuk mencipta kotak dialog amaran dengan tajuk 'Pengesahan' dan mesej 'Anda telah memilih {apa pun nilainya}. Fungsi bind() dipanggil dengan ComboBox 'mcb' dengan menambahkan parameter 'ComboboxSelected' dan fungsi 'change'. Fungsi mainloop() dilaksanakan untuk menggelungkan program Tkinter. Mari simpan dahulu sebelum berlari.

Kami melaksanakan fail ini menggunakan pertanyaan python3.

$ ular sawa 3 test.py

Skrin Tkinter berikut bernama 'ilustrasi ComboBox' muncul dalam perkara berikut:

Apabila kita mengklik pada tanda segi tiga ComboBox di bawah tajuk 'Pilih Bulan', ia menunjukkan nama bulan.

Apabila kita memilih 'Julai', ia ditunjukkan pada label dan amaran dialog dan mesej muncul. Tekan Ok untuk meneruskan.

Kesimpulan

Ini semua tentang menggunakan modul Tkinter Python untuk membuat comboBox dalam tetingkap GUI. Untuk ini, kami mencuba dua contoh Python yang mudah tetapi berbeza untuk mencapai matlamat menggunakan fungsi frame() dan cara konvensional untuk mencipta comboBox dalam GUI. Kami menggabungkan kod sampel untuk kedua-dua keadaan dan membuat beberapa perubahan selepas pelaksanaan kod.