Jurnal Java AWT dan Swing
ABSTRAK
Selain untuk
pemrograman yang berbasis konsol, java juga mendukung
pemrogramanberbasiskan GUI (Graphical User Interface), Salah satunya
menggunakan AWT (Abstract
Window
Toolkit), AWT merupakan cara untuk membuat pemrograman windows pada
java,
komponen
komponen AWT terdapat dalam paket java.awt.
AWT merupakan sekulmpulan library yang tidak tergantung pada platfrom
serta digunakan untuk menyederhanakan implementasi user-interface.
Selain
itu dapat juga
menggunakan
swing untuk pemrograman berbasis window, Swing merupakan cara lain
selain
AWT
untuk mengimplementasikan pemrograman window. Swing dikemas dalam
paket bernama
javax.swing.
Swing
bukan pengganti AWT dan tidak berdiri sendiri.
karena
setiap program butuh berkomunikasi dengan mekanisme dasar dari target
platform dari Event Handling yang ada di AWT.
Kata kunci :
GUI dalam JAVA
Pendahuluan
GUI atau Graphical User Interface merupakan sistem
yang memungkinkan para pengguna untuk melakukan interaksi dengan
komputer. GUI merupakan sebuah desain antar muka pada komputer,
selain GUI ada pula CLI atau Command Line Interface, yang berbasis
text dimana para penguna dapat melakukan interaksi dengan komputer
melalui perintah text atau Command Line. Istilah GUI bukan hal yang
lumrah pada saat awal kemunculan komputer. Namun setelah komputer
generasi keempat mulai diciptakan, munculnya televisi berwarna (yang
mendorong pada penciptaan layar monitor berwarna) serta evolusi pada
perangkat penampil gambar (graphic adapter atau graphic card atau
video card) membuat komputer mulai mendapatkan suatu sistem baru.
Secara sederhana, GUI adalah suatu media virtual
yang dapat membuat pengguna memberikan perintah tertentu pada
komputer tanpa mengetik perintah atau Command. Dengan GUI, perintah
dapat dikonversi menjadi ikon dalam layar monitor yang dapat diklik
untuk memulai fungsinya.
GUI merupakan antarmuka pada system yang
menggunakan menu grafis. Menu grafis ini maksudnya terdapat tampilan
yang lebih ditekankan untuk membuat system yang user-friendly agar
para pengguna lebih nyaman menggunakannya.
Tanpa mempelajari tentang grapichal user interface
(GUI), Anda masih tetap bisa membuat suatu program. Tetapi, program
Anda akan kelihatan tidak menarik dan tidak nyaman digunakan bagi
para user. Memiliki GUI yang baik dapat memberi efek pada penggunaan
aplikasi. Java menyediakan banyak tool seperti Abstract Windowing
Toolkit dan Swing untuk mengembangkan aplikasi GUI yang interaktif.
AWT (Abstract Windowing Toolkit) dan Swing
merupakan salah satu Paket yang dapat digunakan untuk mengembangkan
program-program GUI dalam java.
AWT (Abstract Window Toolkit) adalah sekumpulan
dari aplikasi program antarmuka atau Application Program
Interfaces(API) yang digunakan oleh para permragaman java untuk
membuat objek Graphical User Interface (GUI) seperti Button, Scroll
bars dan Windows.
Sedangkan SWING merupakan aplikasi program
antarmuka seperti halnya AWT. Swing menggunakan metode Painted yaitu
objek GUI digambar dalam frame kosong.
Lantas apakah yang membedakan antra swing dan awt,
tentunya swing dan awt memiliki perbedaan dan hal inilah yang akan
menjadi salah satu pembahasan dalam jurnal ini
DASAR GUI
Program GUI (GraphicalUserInterface) merupakan
metode pendesainan program kedunia nyata (realworld) atau visual
bukan dalam bentuk console. Paket yang dapat digunakan unuk
mengembangkan program-program GUI dalam java salah satunya adalah AWT
dan Swing.
Java Foundation Class
Java Foundation Class (JFC) merupakan sekumpulan
class-class Java yang digunakan untuk mengembangkan perangkat lunak
berbasis GUI (Graphical User Interface). Selain itu, JFC juga
mempunyai class-class yang digunakan untuk menambahkan fungsi dan
kemampuan interaksi yang variatif dari pemrograman Java. Dari
definisi ini, JFC tidak hanya berisi class-class GUI saja tetapi juga
class-class lain yang dapat meningkatkan kemampuan pemrograman Java
baik dari segi fungsionalitasnya maupun dari segi kemampuan interaksi
pemrograman Java yang sangat kaya.
AWT (Abstract Windowing Toolkit)
AWT adalah tampilan dasar dari setiap target
platform (Windows, Macintosh, Solaris) atau berdiri sesuai dengan
mekanisme sebuah platform. AWT terdiri dari banyak widget grafik yang
dapat ditambahkan dan diatur dalam tampilan seperti butons, checkbox,
radiobutton, menu, list, canvas, textfield, scroolpane, panel.
Semua komponen GUI non-menu memiliki kelas yang
diturunkan dari kelas java.awt.Component. Sedangakan komponen menu
diturunkan dari java.awt.ComponentMenu. adapun Kelebihan AWT adalah
Didukung oleh browser kuno maupun baru, karena paket ini telah
diimplementasikan sejak lama. Sedangkan kekurangan AWT yaitu:
1.Bersifat heavyweight.
2.Bersifat Opaque (tidak transparan)
Berikut ini adalah daftar dari beberapa class
penting pada container yang telah disediakan oleh AWT.
1) Componen : Abstract class untuk object yang
dapat di tampilkan pada console dan berinteraksi dengan user. Bagian
ini merupakan bagian utama dari AWT.
2) Container : Abstract Subclass dari kompanen
class. Sebuah komponen yang dapat menampung komponen yang lainnya.
3) Panel : Turunan dari container class. Sebuah
frame atau windows tanpa titlebar, menubar, tidak termasuk border.
Super class dari aplet class.
4) Windows : turunan dari container class, top
level windows dimana berarti tidak bisa dimasukan dalam object yang
lainnya. Tidak memiliki border dan menu bar.
5) Frame : turunan dari windows class. Windows
dengan judul, border, menubar, dan pengaturan ukuran di pojok.
Memiliki empat konstruktor, diantaranya seperti berikut
Frame ()
Frame (String title)
Komponen-komponen AWT
1) java.awt.Button : Tombol yang jika ditekan akan
mengerjakan instruksi tertentu
2) java.awt.CheckBox : Tombol berbentuk kotak yang
dapat di-check atau n-check
3) java.awt.Choice : Menu yang terdiri dari
beberapa pilihan
4) java.awt.Label : Untuk meletakkan teks statis
dan tidak dapat diedit
5) java.awt.List : Untuk menyajikan beberapa
pilihan teks dalam satu daftar yang dapat di-scroll (gulung)
6) java.awt.Panel : Menyediakan space untuk
meletakkan komponen atau panel lainnya
7) java.awt.Scrollbar : Untuk memilih nilai dalam
range tertentu
8) java.awt.TextArea : Untuk menampilkan teks
multi-line dan dapat diedit.
Berikut ini adalah contoh program sederhana
menggunakan AWT:
import java.awt.*;
public class AwtPertama
{
public static void main(String[] bowo)
{Frame win=new Frame(" ini AWT");
win.setSize(300,200);
win.show();}
}
Padari program diatas dilakukan import terhadap
java.awt.*, karena pada program diatas menggunakan komponen AWT.
Untuk membentuk sebuah window, harus dibuat sebuah objek dari class
Frame, program diatas objek win terbentuk dari class Frame.
Sedangankan metode setSize, digunakan untuk mengatur ukuran window,
dan metode show digunakan untuk menampilkan window.
Adapun komponen GUI pada AWT : Grafik Beberapa
method grafik ditemukan dalam class Graphic. Dibawah ini adalah
daftar dari beberapa method.
1. Drawline
2. FillRect
3. DrawRect
4. ClearRect
5. DrawPolyline
6. DrawPolygon
7. FillPolygon
8. Getcolor
9. Setcolor
10. Getfont
11. Setfont
12. DrawString
SWING
Swing merupakan salah satu cara untuk
mengimplementasikan pemrograman window pada java. Swing menggunakan
metode “Painted” yaitu, setiap User Interface Elemen di Gambar ke
dalam window/frame kosong.
Komponen swing bersifat lightweight, yaitu
komponen dapat ditampilkan sama pada sistem operasi multi-platform.
Semua komponen pada Swing diawali dengan huruf “J”, misalnya
Jbutton, JtextArea, Jlabel
Semua class pada Java Swing diambil dari package
javax.swing.
Swing Package
1.javax.accessibility
2.javax.swing
3.javax.swing.border
4.javax.swing.colorchooser
5.javax.swing.event
6.javax.swing.plaf
7.javax.swing.plaf.basic
8.javax.swing.plaf.metal
9.javax.swing.plaf.multi
10.javax.swing.plaf.synth
11.javax.swing.text
12.javax.swing.text.html
13.javax.swing.text.rtf
14.javax.swing.table
15.javax.swing.tree
16.javax.swing.undo
Komponen-KomponenSwing
Dalam konteks antarmuka pengguna, komponen
merupakan bagian fundamental di Java. Pada prinsipnya, segala sesuatu
yang kita lihat di tampilan aplikasi Java adalah suatu komponen,
seperti window, menu, dan button. Container adalah jenis komponen
yang ”menampung” dan
mengelola komponenkomponen lainnya. Agar suatu
komponen dapat digunakan, biasanya harus diletakkan di sebuah
container.
Komponen-komponen Swing dapat diklasifikasikan ke
dalam 3 bagian yaitu:
1) Top-levelcontainer berfungsi untuk menyediakan
ruang bagi komponen-komponen lainnya. Container jenis ini terdiri
atas JFrame, JWindow, Jdialog, dan Japplet.
2) Intermediatecontainer komponen (nontop-level)
yang keberadaannya untuk menampung komponen lainnya, missal panel,
tabbed, dan toolbar.
3) Komponen Atomic (tunggal) berfungsi untuk
menampilkan dan atau menerima informasi. Contohnya adalah textfield,
button, dan label.
CONTOH PEMROGRAM SEDERHANA MENGGUNAKAN SWING
Berikut adalah salah satu contoh pemrograman
sederhana menggunakan swing
import javax.swing.*;
class Swing extends JFrame
{
Swing(){
Super ("INI SWING...");
setSize(300,300);
show();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
Swing sw=new Swing();
}
}
PERBEDAAN ANTARA AWT DAN SWING
AWT dan Swing menyediakan komponen GUI yang dapat
digunakan dalam membuat aplikasi Java dan applet. Tidak seperti
beberapa komponen AWT yang menggunakan native code, keseluruhan Swing
ditulis menggunakan bahasa pemrograman Java. Swing menyediakan
implementasi platform-independent dimana aplikasi yang dikembangkan
dengan platform yang berbeda dapat memiliki tampilan yang Sama.
Begitu juga dengan AWT menjamin tampilan look and
feel pada aplikasi yang dijalankan pada dua mesin yang berbeda
menjadi terlihat sama. Swing API dibangun dari beberapa API yang
mengimplementasikan beberapa jenis bagian dari AWT. Namun pada
dasarnya, komponen AWT dapat digunakan bersama dengan komponen Swing.
Perbedaan keduanya adalah, bahwa AWT adalah
tampilan dasar dari setiap target platform (Windows,Macintosh,
Solaris) atau berdiri sesuai dengan mekanisme sebuah platform, hal
tersebut bagus untuk sebuah program yang simpel, tetapi menjadi sulit
ketika mengimplementasikan sebuah program yang lebih kompleks dan
harus sesuai dengan target platform. Setiap User Interface elemen
seperti Button, TextField, ScrollBar memiliki tingkah laku (behavior)
yang berbeda di setiap platform. Yang lebih parah lagi, AWT User
Interface Library memiliki bug yang berbeda di setiap platform.
Maka hadirlah Swing yang menawarkan tampilan yang
lebih kaya dan bagus. Swing tidak berdasarkan platform yang dituju
tetapi menggunakan metode “Painted” yaitu, setiap User Interface
Elemen di Gambar ke dalam window/frame kosong. Sehingga setiap User
Interface Elemen akan tampil dan berprilaku sama di setiap platform.
Sayangnya Swing lebih lambat tampil di layar. Dan
ketika User Interface tampak sama di setiap platform, maka juga akan
tampak berbeda untuk tampilan standar sebuah platform.
KESIMPULAN
Di dalam java terdapat dua paket yang dapat kita
gunakan untuk pengembangan program-program GUI. GUI adalah graphical
user interface, dalam dunia nyata sebagian programnya berbentuk
visual bukan console. Dua paket GUI tersebut adalah SWING dan AWT.
AWT (Abstract Window Toolkit) adalah sekumpulan
dari aplikasi program antarmuka atau Application Program
Interfaces(API) yang digunakan oleh para permragaman java untuk
membuat objek Graphical User Interface (GUI) seperti Button, Scroll
bars dan Windows.
Sedangkan SWING merupakan aplikasi program
antarmuka seperti halnya AWT. namun memiliki tampilan lebih kaya dan
bagus dari AWT. Swing menggunakan metode Painted yaitu objek GUI
digambar dalam frame kosong sehingga akan berperilaku sama pada
setiap platform.
Swing tidak berdiri sendiri, akan tetapi
menggunakan mekanisme dasar dari AWT, sehingga antara Swing dan Awt
selalu berdampingan.
AWT merupakan sekumpulan library yang tidak
tergantung pada platform (platform independent) dan digunakan untuk
menyederhanakan implementasi userinterfae.
Sedangkan Swing merupakan bentuk implementasi yang
menambahkan komponen-komponen dalam system GUI tetapi masih
didasarkan pada arsitekstur AWT.
Swing bukan pengganti dari AWT dan tidak bisa
berdiri sendiri, karena setiap program butuh berkomunikasi dengan
mekanisme dasar dari target platform dari Event Handling yang ada di
AWT, jadi Swing akan selalu berdampingan dengan AWT.
Post a Comment for "Jurnal Java AWT dan Swing"