Pemrograman Sederhana Shell & Zenity (multi platform Linux)

Tempat nongkrong. Diskusi bebas di luar topik.
User avatar
ArzonLinus
Posts: 352
Joined: 22 Jan 2010, 09:49
Location: Anonymous
Contact:

Pemrograman Sederhana Shell & Zenity (multi platform Linux)

Postby ArzonLinus » 22 Jan 2012, 10:30

Image
Apa itu zenity?
zenity adalah dialog window script yang berbasis gtk utk membantu membuat program berbasis GUI, yang bisa berjalan pada berbagai platform distro linux. pada ubuntu yang berbasis gnome sudah terinstall sebagai default. sedangkan pada ubuntu dengan desktop lain seperti KDE/Xfce/LXDE harus menginstal-nya terlebih dahulu :
sudo apt-get install zenity.


ketik di terminal :

zenity --info --text="Ini percobaan"

zenity --error --text="Pesan error"

zenity --info --text="Informasi"

zenity --warning --text="Peringatan"

zenity --question --text="Bagaimana kabar anda hari ini ?"

zenity --calendar --title="Tanggal"

zenity --file-selection --title="Pilih File"

zenity --list --title="Contoh List Menu" --column="Col1" --column="Col2" --column="Col3" 1.1 2.1 3.1 1.2 2.2 3.2 1.3 2.3 3.3

zenity --entry --title="Isi data" --text="Isi Password Anda:"

Berikutnya saya akan membahas penggabungan zenity dialog window dengan shell programming.

buat file dengan extension .sh
lalu buka dengan gedit jika di gnome, trus isi sbb :

#!/bin/sh
#contoh zenity pertanyaan input data

isi=`zenity --entry --title="Isi Data" --text="Bagaimana kabar anda hari ini?"`
if [ "$isi" != "" ]; then
zenity --info --text=$isi
else
zenity --info --text="Anda tidak mengisi"
fi

cukup sekian dulu contoh dari saya, akan di lanjutkan lagi dilain waktu...

Latihan 2 : (update 23/1/2012)

script dialog box pertanyaan pilihan :


if `zenity --question --text="Sudahkah anda mandi hari ini ?"`; then
zenity --info --text="anda menekan YES"
else
zenity --info --text="anda menekan NO"
fi


penjelasan diatas adalah menampilkan dialog pilihan pertanyaan, YES atau NO, dan hasil ditampilkan dalam dialog box info sesuai dengan yang tombol yang ada tekan

melihat home user anda :
zenity --info --text="Directory anda adalah $HOME"

melihat username anda :
zenity --info --text="username anda adalah $USER"

Latihan 3 : (update 24/1/2012)

contoh Progress Dialog :

#!/bin/sh
(
echo "10" ; sleep 1
echo "# Updating mail logs" ; sleep 1
echo "20" ; sleep 1
echo "# Resetting cron jobs" ; sleep 1
echo "50" ; sleep 1
echo "This line will just be ignored" ; sleep 1
echo "75" ; sleep 1
echo "# Rebooting system" ; sleep 1
echo "100" ; sleep 1
) |
zenity --progress \
--title="Update System Logs" \
--text="Scanning mail logs..." \
--percentage=0

if [ "$?" = -1 ] ; then
zenity --error \
--text="Update canceled."
fi


contoh progress dialog pulsate ( bolak-balik )
biasanya menyajikan proses yang tidak bisa diukur berapa lama akan selesai.

contoh proses copy :

cp -Rfv $HOME/Documents $HOME/baru | zenity --progress --pulsate --auto-close --auto-kill --text="Mohon ditunggu...."
User avatar
lisnux
Posts: 1763
Joined: 02 Jan 2010, 16:26
Location: Samarinda
Contact:

Re: Pemrograman Sederhana Shell & Zenity (multi platform Lin

Postby lisnux » 22 Jan 2012, 11:05

wow keren :D
Ada tutorial yang lengkapnya ndak bro arzon ?
User avatar
ArzonLinus
Posts: 352
Joined: 22 Jan 2010, 09:49
Location: Anonymous
Contact:

Re: Pemrograman Sederhana Shell & Zenity (multi platform Lin

Postby ArzonLinus » 22 Jan 2012, 11:24

[quote=lisnux]wow keren :D
Ada tutorial yang lengkapnya ndak bro arzon ?


ditunggu kelanjutan trit ini aja :grin: