Buat lebih banyak aplikasi GUI terlebih dahulu menggunakan alat Pygobject di Linux - Bahagian 2

Buat lebih banyak aplikasi GUI terlebih dahulu menggunakan alat Pygobject di Linux - Bahagian 2

Kami meneruskan siri kami mengenai membuat aplikasi GUI di bawah desktop Linux menggunakan Pygobject, Ini adalah bahagian kedua siri ini dan hari ini kita akan bercakap tentang membuat aplikasi yang lebih berfungsi menggunakan beberapa widget lanjutan.

Buat aplikasi GUI di Linux- Bahagian 2

Keperluan

  1. Buat aplikasi GUI di bawah Linux menggunakan Pygobject - Bahagian 1

Dalam artikel sebelumnya kami mengatakan bahawa terdapat dua cara untuk membuat aplikasi GUI menggunakan Pygobject: The kod sahaja dan juga Glade cara pereka, tetapi mulai sekarang, kita hanya akan menerangkan Glade cara pereka kerana lebih mudah bagi kebanyakan pengguna, anda boleh mempelajari kod sahaja sendiri dengan menggunakan python-gtk3-tutorial.

Membuat aplikasi GUI Advance di Linux

1. Mari mulakan pengaturcaraan! Buka anda Glade pereka dari menu aplikasi.

Pereka Glade

2. Klik pada "Tetingkap"Butang di bar sisi kiri untuk membuat yang baru.

Buat tetingkap baru

3. Klik pada "Kotak"Widget dan lepaskannya di tetingkap kosong.

Pilih Widget Kotak

4. Anda akan diminta memasukkan bilangan kotak yang anda mahukan, menjadikannya 3.

Buat kotak

Dan anda akan melihat bahawa kotak dicipta, kotak -kotak itu penting bagi kita untuk dapat menambah lebih daripada sekadar 1 widget di tingkap.

5. Sekarang klik pada kotak widget, dan tukar jenis orientasi dari menegak ke mendatar.

Buat kotak mendatar

6. Untuk membuat program mudah, tambahkan "Entri teks","Teks kotak kombo"Dan"Butang"Widget untuk setiap kotak, anda harus mempunyai sesuatu seperti ini.

Buat program mudah

7. Sekarang klik pada "tetingkap1"Widget dari bar sisi kanan, dan tukar kedudukannya menjadi"Pusat".

Buat pusat widget

Tatal ke "Penampilan"Seksyen ... dan tambahkan tajuk untuk tetingkap"Program saya".

Tambah tajuk widget

8. Anda juga boleh memilih ikon untuk tetingkap dengan mengklik pada "Nama ikon" kotak.

Tetapkan ikon widget

9. Anda juga boleh mengubah lalai ketinggian & lebar untuk permohonan ... setelah semua itu, anda harus mempunyai sesuatu seperti ini.

Tetapkan lebar ketinggian widget

Dalam mana -mana program, salah satu perkara yang paling penting ialah mewujudkan "Mengenai"Tetingkap, untuk melakukan ini, pertama kita perlu menukar butang biasa yang kita buat sebelum ke dalam butang stok, lihat gambar.

Buat mengenai tetingkap

10. Sekarang, kita perlu mengubah suai beberapa isyarat untuk menjalankan tindakan tertentu apabila sebarang peristiwa berlaku pada widget kami. Klik pada entri teks widget, beralih ke "Isyarat"Tab di bar sisi kanan, cari"diaktifkan"Dan tukar pengendali ke"enter_button_clicked","diaktifkan"Isyarat adalah isyarat lalai yang dihantar apabila"Masukkan "" Kunci dipukul sambil memberi tumpuan kepada widget entri teks.

Tetapkan isyarat widget

Kita perlu menambah pengendali lain untuk "diklik"Isyarat untuk widget butang kami, klik padanya dan tukar"diklik"Isyarat untuk"Button_is_clicked".

Tambah pengendali widget

11. Pergi ke "Biasa"Tab dan Mark On"Mempunyai tumpuan"Seperti yang berikut (untuk memberi tumpuan lalai untuk butang mengenai bukannya entri).

Tetapkan fokus lalai

12. Sekarang dari bar sisi kiri, buat yang baru "Mengenai dialog"Tetingkap.

Buat mengenai dialog

Dan anda akan melihat bahawa "Mengenai dialog"Tetingkap dibuat.

Mengenai dialog

Mari kita ubahnya ... pastikan anda memasukkan tetapan berikut untuknya dari bar sisi kanan.

Tambah atribut program Pilih Lesen Tambah mengenai penulis Tetapkan tetingkap tetingkap Pilih bendera Appreance

Setelah membuat tetapan di atas, anda akan mengikuti mengenai tetingkap.

Program saya mengenai tetingkap

Di tetingkap di atas, anda akan melihat ruang kosong, tetapi anda boleh mengeluarkannya dengan menurunkan bilangan kotak dari 3 hingga 2 atau anda boleh menambah widgetnya jika anda mahu.

Tukar kotak tetingkap

13. Sekarang simpan fail di folder rumah anda dengan nama "ui.glade"Dan buka editor teks dan masukkan kod berikut di dalamnya.

#!/usr/bin/python #-*-pengekodan: UTF-8-*-dari GI.Repository Import GTK Class Handler: def button_is_clicked (diri, butang): ## the ".Run () "Kaedah digunakan untuk melancarkan tetingkap mengenai. OuraboutWindow.Jalankan () ## Ini hanya satu penyelesaian untuk membolehkan menutup tetingkap mengenai. OuraboutWindow.menyembunyikan () def enter_button_clicked (diri sendiri, butang): ## the ".get_text () "Kaedah digunakan untuk merebut teks dari kotak kemasukan. Kaedah "get_active_text ()" digunakan untuk mendapatkan item yang dipilih dari widget teks kotak kombo, di sini, kami menggabungkan kedua -dua teks bersama ". Cetak Ourentry.get_text () + uscomboBoXtext.get_active_text () ## Tidak ada yang baru di sini ... kami hanya mengimport 'ui.Fail Glade '. Builder = gtk.Pembina () pembina.add_from_file ("ui.glade ") pembina.connect_signals (handler ()) ournewbutton = pembina.tetingkap get_object ("butang1") = pembina.get_object ("window1") ## di sini kami mengimport widget kotak kombo untuk menambah perubahan di atasnya. OUSCOMBOBOXTEXT = Builder.get_object ("comboBoXtext1") ## Di sini kami menentukan senarai yang dipanggil 'default_text' yang akan mengandungi semua item yang mungkin dalam widget teks kotak kombo. default_text = ["dunia", "bumi", "semua"] ## Ini adalah untuk gelung yang menambah setiap item senarai 'default_text' ke widget teks kotak combo menggunakan '.kaedah append_text () ''. untuk x dalam default_text: OurComboBoXtext.append_text (x) ## The '.Tetapkan.Kaedah aktif (n) 'digunakan untuk menetapkan item lalai dalam widget teks kotak kombo, manakala n = indeks item itu. OurComboBoXtext.set_active (0) OurEntry = Builder.get_object ("entry1") ## baris ini tidak memerlukan penjelasan: D Ourentry.set_max_length (15) ## atau ini juga. Ourentry.set_placeholder_text ("Masukkan teks di sini ...") ## Kami hanya mengimport tetingkap mengenai di sini ke pemboleh ubah global 'ouraboutwindow'. OurAboutWindow = Builder.get_object ("aboutdialog1") ## Beri pemaju itu cookie ! tetingkap.Sambungkan ("Padam-Event", GTK.tetingkap main_quit).show_all () gtk.utama 

Simpan fail di direktori rumah anda di bawah nama itu "myprogram.py", Dan berikan kebenaran melaksanakan dan jalankannya.

$ chmod 755 myprogram.py $ ./myprogram.py
Inilah yang akan anda dapat, setelah berjalan di atas skrip.
Tetingkap program saya

Masukkan teks di kotak entri, tekan "Masukkan"Kunci pada papan kekunci, dan anda akan melihat bahawa ayat itu dicetak di cangkang.

Teks output kotak

Itu sahaja buat masa ini, itu bukan aplikasi lengkap, tetapi saya hanya ingin menunjukkan kepada anda cara menghubungkan perkara bersama -sama dengan menggunakan Pygobject, anda boleh melihat semua kaedah untuk semua Gtk Widget di GTKObjects.

Pelajari kaedah, buat widget menggunakan Glade, dan sambungkan isyarat menggunakan fail python, itu sahaja! Tidak sukar di semua kawan saya.

Kami akan menerangkan lebih banyak perkara baru mengenai pygobject di bahagian seterusnya siri ini, sehingga kemudian terus dikemas kini dan jangan lupa untuk memberi komen anda mengenai artikel tersebut.