panduan:panduan_membuat_aplikasi_gui_sederhana_menggunakan_zenity

Panduan Membuat Aplikasi GUI sederhana Menggunakan Zenity

Zenity adalah alat yang membantu Anda untuk membuat fungsional dialog umum GTK+. Zenity juga memiliki berbagai GTK dialog untuk berbagai penyajian data dan memperoleh data dari input pengguna.

Sumber Belajar Perintah Zenity

  1. Pertama : halaman manual perintah.
    • man zenity : Menunjukkan semua informasi tentang perintah zenity. 
    • zenity --help : Menunjukkan opsi yang tersedia dari sebuah perintah. 
    • zenity --option : Menunjukkan bagaimana cara menggunakan opsi pada zenity. 
  2. Kedua : Internet.

General

Penggunaan :

zenity [OPTION...]
  --title=TITLE                                  Menentukan judul dialog
  --window-icon=ICONPATH                         Menentukan icon window
  --width=WIDTH                                  Menentukan lebar
  --height=HEIGHT                                Menentukan tinggi
  --timeout=TIMEOUT                              Menentukan timeout dialog dalam hitungan detik

Calendar Dialog

Penggunaan :

zenity [OPTION...]
  --calendar                                     Menampilkan calendar dialog
  --text=TEXT                                    Menentukan dialog teks
  --day=DAY                                      Menentukan calendar hari
  --month=MONTH                                  Menentukan calendar bulan
  --year=YEAR                                    Menentukan calendar tahun
  --date-format=PATTERN                          Menentukan format untuk tanggal kembali

Contoh :

$ szDate=$(zenity --calendar --text "Pick a day" --title "Medical Leave" --day 23 --month 5 --year 2008); echo $szDate

Additional Text Entry

Penggunaan :

zenity [OPTION...]
  --entry                                        Menampilkan text entry dialog
  --text=TEXT                                    Menentukan the dialog text
  --entry-text=TEXT                              Menentukan the entry text
  --hide-text                                    Hide the entry text

Contoh :

$ szAnswer=$(zenity --entry --text "where are you?" --entry-text "at home"); echo $szAnswer

Error Dialog

Penggunaan :

zenity [OPTION...]
  --error                                        Menampilkan error dialog
  --text=TEXT                                    Menentukan dialog teks
  --no-wrap                                      Tidak mengaktifkan teks wrapping

Contoh :

$ zenity --error --text "Installation failed! "

File Selection

Penggunaan :

zenity [OPTION...]
  --file-selection                               Menampilkan dialog seleksi file
  --filename=FILENAME                            Menentukan nama file
  --multiple                                     Allow multiple files to be selected
  --directory                                    Activate directory-only selection
  --save                                         Activate save mode
  --separator=SEPARATOR                          Menentukan keluaran pemisah karakter
  --confirm-overwrite                            Confirm file selection if filename already exists
  --file-filter=NAME | PATTERN1 PATTERN2 ...     Menentukan filter nama file

Contoh :

$ szSavePath=$(zenity --file-selection --save --confirm-overwrite);echo $szSavePath"

Info Dialog

Penggunaan :

zenity [OPTION...]
  --info                                         Menampilkan info dialog
  --text=TEXT                                    Menentukan the dialog text
  --no-wrap                                      Tidak mengaktifkan teks wrapping

Contoh :

$ zenity --info --text "Join us at irc.freenode.net #lbe."

Text Information Dialog

Penggunaan :

zenity [OPTION...]
  --text-info                                    Menampilkan dialog teks informasi
  --filename=FILENAME                            Membuka file
  --editable                                     Diperbolehkan merubah teks

Contoh :

$ gksudo lsof | zenity --text-info --width 530

List Dialog

Penggunaan :

zenity [OPTION...]
  --list                                         Menampilkan list dialog
  --text=TEXT                                    Menentukan dialog text
  --column=COLUMN                                Menentukan column header
  --checklist                                    Use check boxes for first column
  --radiolist                                    Use radio buttons for first column
  --separator=SEPARATOR                          Menentukan keluaran pemisah karakter
  --multiple                                     Allow multiple rows to be selected
  --editable                                     Diperbolehkan merubah teks
  --print-column=NUMBER                          Print a specific column (Default is 1. 'ALL' can be used to print all columns)
  --hide-column=NUMBER                           Menyembunyikan spesifik kolom
  --hide-header                                  Menyembunyikan kolom header

Contoh 1 :

$ ans=$(zenity  --list  --text "How linux.by examples can be improved?" --checklist  --column "Pick" --column "options" TRUE "More pictures" TRUE "More complete post" FALSE "Includes Installation guidelines" FALSE "Create a forum for question queries" --separator=":"); echo $ans

Contoh 2 :

$ ans=$(zenity  --list  --text "Is linux.byexamples.com helpful?" --radiolist  --column "Pick" --column "Opinion" TRUE Amazing FALSE Average FALSE "Difficult to follow" FALSE "Not helpful"); echo $ans

Notification

Penggunaan :

zenity [OPTION...]
  --notification                                 Menampilkan notifikasi
  --text=TEXT                                    Menentukan notifikasi teks
  --listen                                       Listen for commands on stdin

Contoh :

$ zenity  --notification  --window-icon=update.png  --text "Please update your system."

Progress Dialog

Penggunaan :

zenity [OPTION...]
  --progress                                     Menampilkan progress indication dialog
  --text=TEXT                                    Menentukan dialog teks
  --percentage=PERCENTAGE                        Menentukan initial percentage
  --pulsate                                      Pulsate progress bar
  --auto-close                                   Dismiss the dialog when 100% has been reached
  --auto-kill                                    Kill parent process if cancel button is pressed

Contoh :

$ gksudo lsof | tee >(zenity --progress --pulsate) >lsof.txt

Questions Dialog

Penggunaan :

zenity [OPTION...]
  --question                                     Menampilkan question dialog
  --text=TEXT                                    Menentukan dialog teks
  --ok-label=TEXT                                Menentukans label tombol OK
  --cancel-label=TEXT                            Menentukans label tombol Cancel
  --no-wrap                                      Tidak mengaktifkan teks wrapping

Contoh :

$ zenity --question --text "Are you sure you want to shutdown?"; echo $?

Warning Dialog

Penggunaan :

zenity [OPTION...]
  --warning                                      Menampilkan dialog peringatan
  --text=TEXT                                    Menentukan the dialog text
  --no-wrap                                      Do not enable text wrapping

Contoh :

$ zenity --warning --text "This will kill, are you sure?";echo $?

Scale

Penggunaan :

zenity [OPTION...]
  --scale                                        Menampilkan dialog skala
  --text=TEXT                                    Menentukan dialog teks
  --value=VALUE                                  Menentukan nilai awal
  --min-value=VALUE                              Menentukan nilai minimum
  --max-value=VALUE                              Menentukan nilai maksimal
  --step=VALUE                                   Menentukan step size
  --print-partial                                Mencetak sebagian nilai
  --hide-value                                   Menyembunyikan nilai

Contoh :

$ ans=$(zenity --scale --text "pick a number" --min-value=2 --max-value=100 --value=2 --step 2);echo $ans

Contoh Program

Berikut contoh program BashScript yang dikombinasikan dengan Zenity :

Example 1

#!/bin/bash
ENTRY=`zenity --entry --title "Enter your name" --text "Please enter your name" --entry-text "Yourname"`
zenity --info --text "Hello $ENTRY!"

Example 2

#!/bin/sh

file=`zenity  --title="Select a file to remove" --file-selection`

if [ -e $file ] ; then
  echo "Removing $file"
  rm -f "$file"
else
  zenity --warning --text="File doesn't exist"
fi

Example 3

#/bin/sh
home=`pwd`
files=`find $home | zenity --list --title "Select a file" --column "Files" --separator=" " --multiple`

for i in ${files}; do

    echo ${i}

done

Example 4

#!/bin/bash
if [[ $EUID -ne 0 ]]; then
   zenity --warning --text "Must be run as root"
   exit 1
   else
   zenity --info --text "Root Mode"
fi

Help

Penggunaan :

zenity [OPTION...]
  -h, --help                                     Menunjukkan help options
  --help-all                                     Menunjukkan all help options
  --help-general                                 Menunjukkan general options
  --help-calendar                                Menunjukkan calendar options
  --help-entry                                   Menunjukkan text entry options
  --help-error                                   Menunjukkan error options
  --help-info                                    Menunjukkan info options
  --help-file-selection                          Menunjukkan file selection options
  --help-list                                    Menunjukkan list options
  --help-notification                            Menunjukkan notification icon options
  --help-progress                                Menunjukkan progress options
  --help-question                                Menunjukkan question options
  --help-warning                                 Menunjukkan warning options
  --help-scale                                   Menunjukkan scale options
  --help-text-info                               Menunjukkan text information options
  --help-misc                                    Menunjukkan miscellaneous options
  --help-gtk                                     Menunjukkan GTK+ Options

Sumber Referensi :

panduan/panduan_membuat_aplikasi_gui_sederhana_menggunakan_zenity.txt · Last modified: 2013/11/01 09:27 (external edit)