Cara membuat GUI sekolah lama (seperti installer debian / arch)


13

Saya telah melakukan banyak instalasi belakangan ini, dan bila memungkinkan saya biasanya memilih instalasi teks dari menu GRUB Live CD. Sebagian besar penginstal terlihat seperti ini:

masukkan deskripsi gambar di sini

Saya selalu berpikir GUI ini (jika Anda bisa menyebutnya demikian) benar-benar hebat dan ringan. Melihat banyak aplikasi / distro menggunakannya, itu harus merupakan shared library atau apa? Apakah ada cara saya bisa membuat barang seperti ini?


Perlu dicatat bahwa sebagian besar sysinstallers untuk linux & bsd memiliki presentasi antarmuka pengguna yang mengerikan menggunakan kutukan mengenai tombol OK dan Batal: jarang jelas ketika pengguna telah menyoroti mereka. Ketika menerapkan kutukan, lebih baik tidak menggunakan installer tersebut sebagai contoh desain; kembali untuk meninjau program-program DOS lama itu, seperti Lotus 123, untuk seberapa baik GUI grafis ANSI harus bekerja dalam hal UI. Itu seperti: [Oke] berwarna terang tapi tidak disorot, sampai dipilih oleh pengguna.
Jonathan Cline IEEE

Jawaban:



14

Saya tidak tahu tentang Arch dan Debian, tetapi seringkali GUI tersebut dibuat dialog(1), yang mengambil banyak argumen baris perintah dan kemudian membuat dialog dengan ncurses. Sebagai contoh, menuconfig kernel Linux terlihat seperti ini:

Cuplikan layar menuconfig

Contoh dialogpenggunaannya adalah:

$ dialog --title "Hello" --infobox "Hello there Unix and Linux Stack Exchange" 20 100

Yang mengakibatkan:

Tangkapan layar dialog (1)


Ini murni luar biasa, jadi dialog menggunakan ncurses untuk menarik ke terminal? Tidak mungkin lebih mudah dari itu. Terima kasih
n0pe

8

Pada level yang lebih tinggi, yang terlihat persis seperti itu umumnya menggunakan sesuatu seperti kadal / whiptail atau dialog . Yang khusus itu terlihat seperti newt / whiptail, karena dialog cenderung menggambar bingkai di sekitar kontrol seperti listbox itu. Untuk contoh lain, konfigurasi kernel linux menggunakan dialog khusus versi cut-down (tanpa fitur tambahan yang tidak digunakan, dan saya akan membayangkan kotak centang ya / tidak / modul adalah fitur khusus)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.