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"