Pengenalan pemprograman java berbasis GUI.pertama-tama saya selaku penulis ingin men-sharingkan pengetahuan mengenai GUI (Graphical User Interface). GUI (Graphical User Interface) merupakan tampilan grafis yang mengandung alat-alat atau komponen-komponen yang memampukan pengguna untuk melakukan pekerjaan interaktif. GUI (Graphical User Interface) software yang dikembangkan oleh para peneliti di Xerox Palo Alto Research Center (PARC) di tahun 70-an. GUI di kembangkan dengan tujuan pengguna berinteraksi dengan perangkat keras computer serta memudahkan dalam mengoprasikan sebuah system operasi (user friendly).
GUI (Graphical User User Interface) berkerja dengan cara setiap komponen, dan GUI tersebut, diasosiasikan dengan satu atau lebih rutin yang ditulis pengguna yang dikenal sebagai callback. Eksekusi setiap callback dipicu oleh aksi tertentu dari pengguna seperti tombol ditekan, klik-an mouse, pemilihan menu item, atau cursor melewati sebuah komponen. Kita sebagai GUI, yang menyediakan callback tersebut. Callback merupakan fungsi yang kita tulis dan asosiasikan dengan sebuah komponen tertentu pada GUI atau dengan GUI itu sendiri. Callback mengontrol sifat GUI atau komponen dengan melakukan beberapa aksi untuk merespon kejadian pada komponennya tersebut. Kejadian dapat berupa mouse diklik pada sebuah push button, pemilihan menu, keyboard ditekan, etc.
Perbedaan AWT & SWING
Dalam membangun objek GUI di Java, Kita bisa menggunakan AWT atau Swing, perbedaan keduanya adalah, bahwa AWT adalah tampilan dasar dari setiap target platform (Windows, Macintosh, Solaris) atau berdiri sesuai dengan mekanisme sebuah platform, seperti slogan Java (Write once run everywhere), 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, hal ini mengubah slogan Java menjadi (Write once, Debug everywhere).
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.
Swing bukan pengganti dari AWT, dan tidak bisa berdiri sendiri, karena setiap program butuh berkomunikasi dengan mekanisme dasar dari target platform seperti Event Handling yang ada di AWT, jadi Swing akan selalu berdampingan dengan AWT.
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. Dan Java mengatasinya dengan baik sekali, yaitu Swing menyediakan theme specific (Windows theme, Motif Theme, Ocean Theme), yang bisa disesuaikan dengan platform. Sehingga Swing mengembalikan slogan java (Write Once, Run Everywhere)
Grafical User Interface (GUI) adalah salah satu kemampuan Java dalam mendukung dan manajemen antarmuka berbasis grafis. Tampilan grafis yang akan ditampilkan terhubung dengan program serta tempat penyimpanan data. Elemen dasar di Java untuk penciptan tampilan berbasis grafis adalah dua paket yaitu AWT dan Swing. Abstract Windowing Toolkit (AWT), atau disebut juga “Another Windowing Toolkit”, adalah pustaka windowing bertujuan umum dan multiplatform serta menyediakan sejumlah kelas untuk membuat GUI di Java. Dengan AWT, dapat membuat window, menggambar, manipulasi gambar, dan komponen seperti Button, Scrollbar, Checkbox, TextField, dan menu pull-down.
Penggunaan komponen AWT ditandai dengan adanya instruksi : import java.awt.*; Swing merupakan perbaikan kelemahan di AWT. Banyak kelas swing menyediakan komponen alternatif terhadap AWT. Contohnya kelas JButton swing menyediakan fungsionalitas lebih banyak dibanding kelas Button. Selain itu komponen swing umumnya diawali dengan huruf “J”, misalnya JButton, JTextField, JFrame, JLabel, JTextArea, JPanel, dan sebagainya. Teknologi swing menggunakan dan memperluas gagasan-gagasan AWT. Sementara, penggunaan komponen Swing ditandai dengan adanya instruksi : import javax.swing.*;
Beberapa perbedaan AWT dan Swing, AWT merupakan komponen heavyweight (kelas berat) sedangkan Swing lightweight (kelas ringan). Swing memiliki lebih banyak komponen. Fasilitas Swing Look and Feel : Metal, Windows, Motif. Komponen Swing berdasar model-view, yaitu suatu cara pengembangan komponen dengan pemisahan penyimpanan dan penanganan data dari representasi visual data.
Bahasa pemrograman Java merupakan salah satu bahasa pemrograman yang umum digunakan untuk mengembangkan aplikasi basis data yang dibuat menggunakan MySQL.
Pemrograman AWT
Sebagian besar pengguna lebih menyukai aplikasi berbasiskan GUI (Graphical User Interface) karena memiliki tampilan yang lebih interaktif. Java menyediakan dua kelas untuk bekerja dengan GUI, yaitu AWT (Abstract Windowing Toolkit) dan Swing. AWT terdapat dalam package java.awt. Package ini berisikan komponenkomponen GUI yang bersifat platform oriented atau tergantung pada suatu platform system operasi. Berikut adalah beberapa fasilitas yang disediakan package java.awt:
1. Pengaturan tata letak (layout management) komponen dalam suatu container.
2. Mendukung even handling, yaitu mekanisme pendeteksian event dan penentuan respons yang akan diberikan ketika pengguna (user) mengakses komponen tersebut.
3. Manipulasi grafis dari komponen, seperti font, warna, icon, dan sebagainya.
AWT memiliki beberapa komponen untuk aplikasi GUI yaitu button, canvas, checkbox, choice, label, list, scroolbar, textfield, dan text area. Setiap
komponen ini memiliki fungsi dan cara pembuatan yang berbeda-beda.
Komponen-Komponen AWT
1. Button
Button adalah tombol dengan label teks dan akan merespon event ketika pengguna menekan atau mengklik tombol tersebut. Pada komponen ini, selain dapat mengatur label teks, Anda juga dapat mengatur jenis teks, warna tombol, warna teks, dan keaktifan dari tombol tersebut.
Konstruktor dari komponen button adalah:
· Button() Konstruktor komponen button tanpa label
· Button(String Label) Konstruktor komponen button dengan label yang ditetapkan.
Untuk membuat action listener pada sebuah tombol, langkah langkah yang harus dilakukan adalah sebagai berikut:
o Mengimpor kelas action listener import java.awt.event.*;
o Mengimplements kelas ActionListener pada kelas utama implements ActionListener
o Menambahkan methode actionPerformed public void actionPerformed(ActionEvente)
o Menambahkan action listener pada button addActionListener(ActionListener
2. Label
Label adalah komponen yang digunakan untuk menampilkan tulisan atau teks yang hanya dapat dibaca dan tidak dapat dimodifikasi. Pada komponen ini, Anda dapat mengatur jenis teks, warna teks, warna latar belakang teks, ukuran teks, dan bentuk teks dari label tersebut.
Konstruktor dari komponen Label adalah :
· Label() Konstruktor komponen Label tanpa teks.
· Label(String text) Konstruktor komponen Label dengan text yang ditetapkan
dan posisi alignment teks adalah default (rata kiri).
· Label(String text, int alignment) Konstruktor komponen label dengan teks yang ditetapkan dan posisi alignment yang ditentukan pada posisi tertentu.
3. List
List adalah komponen yang terdiri dari daftar-daftar pilihan yang dapat digulung. Pada komponen ini, Anda dapat menambahkan item, mengatur jenis teks, warna teks, warna latar belakang teks, ukuran teks, bentuk teks dari item yang dipilih dari komponen List tersebut.
Konstruktor dari komponen List adalah :
· List() Membuat suatu daftar (list) baru.
· List(int rows) Membuat suatu daftar (list) baru dengan menentukan banyaknya
baris (row) yang ditampilkan.
· List(int rows, boolean multipleMode) Membuat suatu daftar (list) baru dengan menentukan banyaknya baris (row) yang ditampilkan dan multiple mode.
4. TextField
TextField adalah komponen yang digunakan untuk menulis teks yang berukuran kecil dan dapat diedit. Pada komponen ini, selain dapat mengatur isi teks, Anda juga dapat mengatur jenis teks, warna tombol, warna teks, dan keaktifan dari Teks- Field tersebut.
Konstruktor dari komponen TextField adalah :
· TextField() Membuat Text Field baru.
· TextField (String Text) Membuat suatu text field dengan teks yang ditetapkan.
· TextField (int columns) Membuat suatu teks field kosong dengan menetapkan nilai dari jumlah kolom dari text field tersebut.
· TextField(String Text, int columns) Membuat suatu text field dengan teks yang ditetapkan dan menetapkan nilai dari jumlah kolom dari text field tersebut.
5. TextArea
TextArea adalah komponen yang digunakan untuk menulis teks yang berukuran besar dan dapat diedit. Pada komponen ini, selain dapat mengatur isi teks, Anda juga dapat mengatur jenis teks, warna tombol, warna teks, dan keaktifan dari
TeksArea tersebut.
Konstruktor dari komponen TextField adalah :
· TextField() Membuat Text Area baru.
· TextField (String Text) Membuat suatu text area dengan teks yang ditetapkan.
· TextField (int rows, int columns) Membuat suatu teks area kosong dengan menetapkan jumlah baris dan kolom dari text area tersebut.
·
Pemrograman Swing
Swing merupakan salah satu cara untuk mengimplementasikan pemrograman window pada java, beda swing dengan awt adalah bentuk komponen komponen dari kelas swing sama bentuknya pada semua sistem operasi.
Komponen - Komponen Swing
Pada swing juga memiliki banyak komponen, namun kali ini hanya di bahas JButton, JLabel dan JTextField.
1. JLabel
JLabel merupakan komponen yang digunakan untuk menampilkan teks yang pendek atau gambar atau keduanya. Komponen Label memiliki konstruktor sebagai
berikut :
· JLabel() Menciptakan objek JLabel tanpa gambar dan tanpa teks
· JLabel(Icon gbr) Menciptakan objek JLabel dengan gambar tetapi tanpa teks
· JLabel(String str) Menciptakan objek JLabel dengan teks tetapi tanpa gambar
· JLabel(String str, Icon gbr, int pengaturanHorizontal) Menciptakan objek
JLabel dengan gambar dan teks serta diatur dengan pengaturan horizontal
· JLabel(String str, Icon gbr, int pengaturanVertikal) Menciptakan objek JLabel dengan gambar dan teks serta diatur dengan pengaturan vertical.
2. JButton
Kelas JButton berguna untuk membuat objek tombol yang dapat dilengkapi
dengan judul tombol dan gambar, selain itu JButton merupakan komponen yang
dapat menghasilkan suatu event jika tombol diklik oleh user.
Komponen JButton memiliki konstruktor sebagai berikut :
· JButton() Menciptakan objek JButton tanpa gambar dan tanpa teks
· JLabel(Icon gbr) Menciptakan objek JButton dengan gambar tetapi tanpa teks
· JLabel(String str) Menciptakan objek JButton dengan teks tetapi tanpa gambar
· JLabel(String str, Icon gbr) Menciptakan objek JLabel dengan gambar dan teks.
3. JTextField
JTextField merupakan objek yang berguna untuk memasukkan atau mengedit data satu baris.
Komponen JTextField memiliki konstruktor sebagai berikut :
· JTextField() Menciptakan objek JTextField baru tanpa nilai awal String
· JTextField(String str) Menciptakan objek JButton dengan gambar tetapi tanpa teks
· JTextField(String str,int Kolom) Menciptakan objek JButton dengan teks tetapi tanpa gambar
· JTextField( int Kolom) Menciptakan objek JLabel dengan gambar dan teks.
· JTextField(Document doc, String str, int Kolom) Menciptakan objek JButton dengan teks tetapi tanpa gambar.
0 comments:
Post a Comment