Nama / NIM : Ketut Sulya Arya Wasika / 1404505045
Jurusan/Fakultas/Universitas : Teknologi/ F. Teknik/ Universitas Udayana
Matkul : Pemrograman Berorientasi Objek
Dosen : I Putu Agus Eka Pratama, ST, MT
Hallo sobat kali ini saya akan membahas mengenai cara membuat program GUI sederhana melalui Java, sebelum kita kita membuat ada baiknya untuk mengetahui pengertian dari GUI terlebih dahulu
A. Pengertian Java GUI
JAVA GUI sendiri secara umum sama
dengan pemahaman GUI sendiri, namun disini GUI pada JAVA adalah salah satu dari
fasilitas Java dalam mengembangkan suatu aplikasi dengan memberikan suatu
interface yang nantinya akan disesuaikan dengan kebutuhan suatu aplikasi, baik
skala kecil dan besar. Intinya, GUI pada Java adalah komponen-komponen
penyempurna dalam sebuah sistem, seperti komponen navigasi, graphic, interface
desktop, komponen menu, sinkronisasi antar interface dan semuanya itu dirancang
dengan penelitian yang baik, dimana nantinya aplikasi tersebut dapat dengan
mudah dioperasikan user. Banyak sudah aplikasi yang telah Java kembangankan
dengan menggunakan GUI sebagai nilai penggunaan dan nilai jual. Software perangkat
lunak dan keras juga termasuk di dalamnya. Java GUI adalah program pengembangan
suatu user interface dengan mengetengahkan graphic sebagai penghubung user
dengan sistem, sehingga mudah dalam implementasi aplikasi sistem tersebut.
B. Komponen penyusun Java GUI
-Komponen Utama GUI java adalah JFC (Java Fundamental Class)
-Koordinat GUI
-AWT (Abstract Windows Toolkit) merupakan paket dasar dalam
pembentukan GUI dengan menggunakan platform yang terdapat dalam masing-masing
OS (native resource) Paket dasar : java.awt.component
-Swing Product SUN dalam membangun GUI yang Independent
sehingga bersifat cross platform dalam tampilan window yang dihasilkan. Paket
dasar: javax.swing.Jcomponent
-Event Handler Aksi-reaksi yang diberikan pada tiap-tiap
komponen GUI
Fungsi GUI
Dari pemahaman tentang GUI
sebelumnya, fungsi-fungsi GUI dalam dunia teknologi dan informasi saat ini
sangat beragam. Berikut beberapa fungsi dari penggunaan GUI dalam dunia Iptek
khususnya komputer :
(1). Pointing device dengan perangkat berupa mouse
(2). Memiliki fungsi sebagai plug and play, yang mana
memudahkan user dalam menginstall dan uninstall hardware/sofware (sinkronisasi)
(3). Membuat software-software yang menuntut aplikasi dalam
komputer user yang dapat digunakan untuk kegiatan user dalam proses seperti
menulis text, spreadsheet. sound, graphic dan lain-lain
(4). Tntuk digunakan dalam pembuatan System Operasi sebagai
User friendly dan ergonomis
(5). Pembuatan website
(6). Opensource software/hardware atau pengembang
aplikasi-aplikasi skala besar lainnya.
C. Macam – macam GUI
Ini adalah beberapa macam contoh GUI pada Java.
1. AWT
(Abstract Window Toolkit) – SUN Microsystem -> Oracle Product
AWT (Abstract Window Toolkit) ini adalah GUI Toolkit pertama
pada bahasa pemrograman Java, sayang-nya AWT ini sangat-sangat kekurangan
komponen yang biasa digunakan untuk membangun sebuah aplikasi desktop secara
lengkap (komponen tabel saja tidak ada ). Terlepas dari kurang-nya komponen GUI
yang terdapat pada AWT (Abstract Window Toolkit), aplikasi yang dibangun
menggunakan AWT (Abstract Window Toolkit) akan tampak seperti aplikasi native.
Maksudnya yaitu, jika aplikasi yang dibangun menggunakan AWT (Abstract Window
Toolkit) ini dijalankan pada Sistem Operasi Windows. Maka aplikasi ini akan
terlihat seperti aplikasi Windows pada umum-nya, dan begitu juga jika
dijalankan pada Sistem Operasi Mac ataupun GNU/Linux. Kenapa ini bisa terjadi,
karena AWT (Abstract Window Toolkit) ini benar-benar memanggil native subrutin
untuk menggambar setiap komponen-nya ke layar.
2. Java Swing –
SUN Microsystem -> Oracle
GUI Toolkit yang mungkin paling banyak dikenal oleh
teman-teman yang baru belajar Pemrograman GUI di Java dibandingkan dengan GUI
Toolkit yang lain GUI Toolkit ini lebih banyak dikenal dikarenakan dukungan
tutorialnya yang cukup banyak bertebaran di Internet, dan juga merupakan
standart dari Java yang mana kita tidak perlu melakukan penambahan library lagi
kalau ingin menggunakan GUI Toolkit ini. Selain itu, terdapat 2 IDE besar yang
menggunakan GUI Toolkit Java Swing yaitu NetBeans IDE(OpenSource) dan IntelliJ
IDEA (mempunyai versi OpenSource dan Komersial)
Dibandingkan dengan pendahulu-nya yaitu AWT (Abstract Window
Toolkit), Swing mempunyai lebih banyak komponen pendukung untuk membangun
sebuah aplikasi yang lengkap untuk keperluan desktop. Selain didukung dengan
banyak-nya komponen, Swing ini benar-benar murni 100 % ditulis dengan bahasa
pemrograman Java tanpa adanya sebuah wrapper untuk memanggil rutin-rutin native
code via JNI (Java Native Interface). Seluruh komponen yang terdapat pada
Swing, semuanya murni digambar sendiri menggunakan API (Application Programming
Interface) 2D untuk memanggil rutin-rutin dasar penggambaran komponen-nya. Nah
dengan model seperti ini, memungkinkan sekali aplikasi yang dibangun
menggunakan Swing tampak sama persis di berbagai macam Sistem Operasi.
Selain itu, Swing juga mempunyai kemampuan untuk
berganti-ganti tampilan menggunakan LAF (Look And Feel) atau themes Sayang-nya,
jika kita menginginkan tampilan GUI yangnative(tampilan-nya sama seperti
aplikasi-aplikasi lain pada sistem operasi target) Swing seperti-nya masih
terasa kurang smoothterutama dukungan pada font rendering-nya . Untuk teman-teman
yang penasaran bagaimana sih sebenarnya tampilan dari GUI Toolkit Swing ini ?
Dibawah ini adalah screenshot Swing standart yang bisa kita gunakan tanpa perlu
menambahkan library lagi.
3. SWT
(Standart Widget Tookit) – IBM Product -> Eclipse Foundation
SWT (Standart Widget Toolkit) ini adalah sebuah GUI Toolkit
yang dikeluaran oleh IBM sebagai alternatif dari AWT/Java Swing milik SUN
Microsystem, yang membedakan antara SWT (Standart Widget Toolkit) dan AWT/Java
Swing adalah SWT ini benar-benar mengakses native GUI library yang terdapat
pada Sistem Operasi melalui JNI (Java Native Interface). Dengan model seperti
ini, memungkinkan tampilan aplikasi yang dibangun menggunakan GUI Toolkit SWT
menjadi sama persis dengan aplikasi native lain-nya. Kekurangan dari model
pemanggilan native GUI library seperti ini adalah kita harus menyediakan
library untuk tiap-tiap Sistem Operasi target aplikasi kita.
4. QtJambi –
Trolltech -> Nokia Product -> Stopped and Taken By Community
Pernah menggunakan Desktop Environment KDE ? Ingin membuat
aplikasi yang tampilan-nya mirip denganKDE ? Kalau teman-teman ingin membangun
aplikasi yang tampilan-nya tampak seperti aplikasi yang terdapat pada KDE tapi
masih ingin menggunakan bahasa java sebagai dasar-nya, maka QtJambi adalah
pilihan yang tepat untuk teman-teman. Karena QtJambi ini merupakan binding Qt
Framework dengan bahasa Java, tetapi sayang-nya proyek QtJambi sudah tidak
disupport oleh Nokia dan secara resmi telah ditutup Untung-nya, awal tahun ini
ada beberapa developer yang peduli dengan kelangsungan proyek ini dan akhir-nya
membuat sebuah komunitas untuk melanjutkan pengembangan proyek QtJambi,
sekarang teman-teman bisa melihat perkembangan proyek QtJambi ini pada halaman
QtJambi Community.
5. AvaGNOME –
Community Product
Kalau QtJambi diatas ditujukan untuk teman-teman yang sudah
akrab dengan API (Application Programming Interface) Qt Framework, berbeda
dengan JavaGNOME Proyek ini lebih dikhususkan untuk teman-teman pecinta GTK
atau yang paling banyak dikenal yaitu GNOMESama seperti GUI Toolkit SWT dan
QTJambi, JavaGNOME ini juga mengakses native library tetapi API yang digunakan
adalah API dari GTK. Untuk teman-teman yang sudah terbiasa membangun aplikasi
menggunakan Glade, maka teman-teman bisa men-design form-nya menggunakan Glade
dan memanggil-nya menggunakan bahasa java melalui JavaGNOME
D. Kelebihan dan Kekurangan GUI
Kelebihan
GUI :
1. Desain Grafis lebih menarik.
2. GUI memungkinkan user untuk berinteraksi dengan komputer
secara lebih baik.
3. Memudahkan pengguna.
4. Menarik minat pengguna.
5. Resolusi gambar yang tinggi.
Kekurangan
GUI :
1. Memakan memory yang sangat besar.
2. Bergantung pada perangkat keras.
3. Membutuhkan banyak tempat pada layar komputer.
4. Tidak fleksibel.
Program GUI Sederhana
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class helloWorld extends JFrame {
helloWorld(String
title) {
this.setSize(250,250);
setTitle(title);
}
public static void
main(String[] args) {
helloWorld
window = new helloWorld(":::Hello World:::");
window.setVisible(true);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel label =
new JLabel(" Apa Yang Anda
Pikirkan Saat Ini?");
window.getContentPane().add(label);
}
}
Penjelasan Program
- import javax.swing.*; // Merupakan baris yang digunakan untuk
mengimport semua yang ada pada package javax.swing.
import java.awt.*; //Baris program ini digunakan untuk mengimport semua yang ada
pada java.awt.
public class helloWorld extends JFrame // Pembuatan kelas dengan nama helloWorld.
this.setSize(250,250); // Digunakan untuk menentukan ukuran height dan width pada objek Frame.
public static void main(String[] args)// merupakan baris pertama.
helloWorld window = new helloWorld(":::Hello World:::")// Yaitu memberikan judul pada pada objek GUI
JLabel label = new JLabel(" Apa Yang Anda Pikirkan Saat Ini?");// Yaitu objek yang akan tampil saat di run
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Baris program ini berfungsi untuk mengakses method
setDefaultCloseOperation yang berfungsi apabila tombol close maka frama akan di
close.
Tampilan pada program GUI pada Geany
Kompile,
Lalu jalankan program
Akan menghasilkan seperti ini
Sekian postingan kali ini semoga bermanfaat.
Sumber:
http://nenylestary.blogspot.com/2013/12/java-gui.html
http://bagus-narutofans.blogspot.com/2012/03/pengertian-dan-macam-gui-java.html