Minggu, 04 Maret 2012

Pengertian JAVA GUI


GUI (Graphical User Interface) merupakan interface antara manusia dan komputer(misalnya cara manusia berinteraksi dengan komputer) yang menggunakan jendela, icon, dan menu yang bisa dimanipulasi dengan mouse atau keyboard.



GUI berdiri dalam command line interface (CLIs), yang hanya menggunakan teks dan diakses oleh keyboard. Contoh yang paling banyak dikenal dari CLI adalah MS-DOS. Contoh lain adalah linux bila digunakan dalam console mode(yaitu seluruh layar hanya menampilkan teks).

Java merupakan sebuah bahasa pemrograman tingkat tinggi yang dikembangkan oleh Sun Microsystem. Java pada awalnya bernama OAK dan dirancang untuk perangkat genggam dan set-top box. Oak tidak berhasil sehingga pada tahun Sun mengubah nama ke Java dan mengambil keuntungan dari World Wide Web.

Java adalah sebuah bahasa berorientasi objek yang mirip dengan C++, namun disederhanakan untuk menghilangkan fitur-fitur yang menyebabkan kesalahan pemrograman. Source Code file java (*.java) yang dikompilasi ke dalam format yang disebut bytecode kemudian dapat dijalankan oleh Java interpreter.

Dari pengertian diatas dapat disimpulkan bahwa Java GUI merupakan pemrograman dengan menggunakan bahasa Java yang didevelopt melalui teknik pemrograman window dengan menggunakan tool window sehingga User dapat berinteraksi dengan nyaman dengan window.

Komponen-komponen GUI :
  1. Koordinat GUI
  2. Swing adalah “built-in” GUI komponen teknologi platform java. Swing adalah penerus AWT teknologi yang diberikan dengan rilis awal platform java. Sebagai contoh, dalam Swing program anda akan menggunakan javax.swing.JTextField bukan java.awt.JTextField. Dalam pengertian lain
  3. SWT (Standart Widget Toolkit) adalah sebuah alternatig teknologi komponen GUI yang merupakan bagian dari eclipse project. Sebuah komunitas yang besar dan berkembang menganjurkan SWT untuk Swing dalam pemrograman Java GUI.
  4. Event Handler merupakan aksi-reaksi pada tiap-tiap komponen GUI
Sistem Koordinat GUI
Sistem Koordinat posisi window dan peletakan komponennya mengikuti sistem koordinat kartesian 2 dimensi x-aksis dan y-aksis. Penempatan dan dimensi dari komponen mengikuti aturan dasar (x,y,lebar,tinggi).

Struktur dasar Window AWT
1. Frame atau Jwindow, sebagai komponen dasar window
2. Header, tempat judul dan standar exit-close
3. Menubar, tempat list menu
4. Kontainer object ContentPane, sebagai kanvas tempat komponen-komponen diletakkan

Dalam mengatur peletakan komponen pada container frame java memiliki standar layout untuk membantu pengaturan posisi layout sehingga dihasilkan tampilan yang user friendly.

Model manajemen layout :
1. Layout Absolut
2. Layout Manajer, yang terdiri atas:
    FlowLayout,GridLayout,BorderLayout,GridBagLayout
3. Kombinasi Layout manajer dan Jpanel

Absolut Layout:
Dalam peletakan dengan model ini maka komponen akan diletakkan sesuai dengan koordinat dan dimensi yang diberikan pada komponen (component.Setbounds(x,y,lebar,tinggi)) Dan tanpa perlu ada pengaturan layout container.setLayout(null)

FlowLayout Manager
Layout akan diatur seperti dokumen dengan alignment:CENTER,LEFT,RIGHT,LEADING,TRAILING. Perubahan dimensi window akan berakibat pada posisi komponen-komponen didalamnya.
Contoh: untuk setting layout
contentPane.setLayout
(new FlowLayout(FlowLayout.LEFT, 10, 10));


Gridlayout Manager
Layout akan diatur seperti tabel dengan mengikuti dimensi kolom dan baris.
Contoh untuk setting layout:
contentPane.setLayout(new GridLayout(3, 1));
Dengan pengaturan tersebut maka dihasilkan tampilan window dengan 3 baris dan satu kolom.

Borderlayout Manajer
Layout diatur dengan membagi container menjadi divider dengan beberapa pilihan section container (NORTH,WEST,CENTER,EAST,SOUTH)
Contoh untuk setting layout:
Sebagai divider
contentPane.setLayout(newBorderLayout());
Dan untuk seksi
contentPane.add(button,BorderLayout.NORTH);

GridBagLayout Manager
merupakan layout manajer komplek. Dengan base Gridlayout dan absolut layout untuk variasi dimensi dari masing-masing grid. Jika pada aplikasi berbasis command prompt kita memanfaatkan masukan dari keyboard untuk melakukan suatu aksi atau perintah, maka pada aplikasi berbasis GUI juga dibutuhkan sumber inputan ataupun kondisi yang melekat pada masing-masing komponen didalam frame yang disebut dengan event. Event kebanyakan dihasilkan oleh piranti utama input yaitu mouse dan keybord, event model ini dinamakan low-level event. Dan ada pula event yang terjadi dikarenakan suatu proses pada komputasi yang biasanya berupa pesan atapun peringatan dikarenakan kondisi pada memori, prosesor ataupun yang lainnya yang disebut dengan semantic event.

Bagaimana proses pembacaan event dan memberi aksi pada GUI java…?
Proses event:
1. Lingkungan aplikasi
2. Komponen Sumber event
3. Kejadian (event)
4. Penyampaian Kejadian (Listener)
5. Implementasi atau reaksi setelah diterimanya kejadian

Contoh Tahapan :
  1. Saat pemakai aplikasi memilih untuk menjalankan sesuatu pada window maka akan memilih salah satu komponen
  2. Contoh Menu pilihan yang terdapat pada window adalah JmenuItems: Menu1,Menu2, …
  3. Kejadian akan dilaporkan ke Frame atau dilakukan registrasi sesuai dengankejadian yang terjadi pada masing2 komponen. Tiap-tiap komponen memiliki metode listener tersendiri.
    Contoh:
    Table 13-4: Listeners and Event Types for JMenuItem
    Listener Registration Method
    Declaring Class
    Corresponding Event Type
    addMenuDragMouseListener()
    JMenuItem
    MenuDragMouseEvent
    addMenuKeyListener()
    JMenuItem
    MenuKeyEvent
    addActionListener()
    AbstractButton
    ActionEvent
    addChangeListener()
    AbstractButton
  4. Apabila menu dipilih maka ditampilkan teks didalam teks area adalah sebagai aksi dari proses event.
    Contoh:
    public void actionPerformed(ActionEvent e) {
    textArea.append(“Button telah di Klik…!\n”);
    throw new UnsupportedOperationException(“Notsupported yet.”);
    }
Referensi :
  • http://www.linfo.org/gui.html
  • http://www.webopedia.com/TERM/J/Java.html
  • http://www.fullspan.com/articles/java-gui-builders.html
  • http://oase.trunojoyo.ac.id

3 komentar:

  1. Kita juga punya artikel yang sama dengan pembahasan kalian boleh di cek di sini. http://repository.gunadarma.ac.id/bitstream/123456789/2317/1/Qt%20for%20Rapid%20Mobile%20Application%20Development.pdf Terima kasih.

    BalasHapus