GUI


java swing adalah sekumpulan kelas-kelas yang digunakan untuk mengembangkan aplikasi berbasis GUI (Graphical User Interface) selain itu java swing juga bisa diartikan sebagai salah satu dari banyaknya solusi untuk mengembangkan aplikasi berbasis GUI. Java Swing merupakan versi peningkatan dari AWT (Abstract Window Toolkit). Package dari Swing menyediakan banyak kelas untuk membuat aplikasi GUI. Package tersebut dapat ditemukan di javax.swing. Komponen Swing ditulis menyeluruh menggunakan Java. Kesimpulannya, program GUI ditulis menggunakan banyak kelas dari package Swing yang mempunyai tampilan look and feel yang sama meski dijalankan pada beda paltform. Lebih dari itu, Swing menyediakan komponen yang lebih menarik seperti color chooser dan option pane.
Nama dari komponen GUI milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas terdapat pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan nama komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai contoh, satu komponen dalam AWT adalah button class. Sedangkan pada Swing, nama komponen tersebut menjadi Jbutton class.
Kelebihan :
  • Di-bundle dalam java development kit
  • Netral terhadap semua sistem operasi
  • Mudah dikembangkan
Komponen :
  1. Top-level ContainerMerupakan container dasar di mana komponen lainnya diletakan. Contoh Top-level container ini adalah Frame, Dialog dan Applet yang diimplementasi dalam class JFrame, Jdialog, dan JApplet.
  2. Intermediate Container
    Merupakan komponen perantara di mana komponen lainnya akan diletakan. Salah satu contoh container ini adalah class JPanel.
  3. Atomic Component
    Merupakan komponen yang memiliki fungsi spesifik dan biasanya user berinteraksi langsung dengan komponen jenis ini. Contohnya adalah JButton, JLabel, JTextField, dan JTextArea.
  4. Layout Manager
    Berfungsi untuk mengatur bagaimana posisi dari komponen – komponen yang diletakan pada container. Secara default terdapat 5 macam layout yaitu berupa class BorderLayout, BoxLayout, FlowLayout, GridBagLayout, dan GridLayout.
  5. Event Handling
    Untuk menangani event yang dilakukan oleh user misalnya menekan tombol, mengkilik mouse dan lain – lain.

GUI
Bahasa pemrograman java hanya dikenal dengan java console yang dimana program java ini hanya dapat dijalankan pada konsol saja. Kemudian, semakin lama Java semakin berkembang. Hingga terciptanya Java GUI ( Graphic User Interface ). Graphic User Interface (GUI) adalah pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan GUI. Tujuannya adalah menambahkan beberapa komponen yang tidak bisa dibuat dalam basis text. Komponen – komponen tersebut bisa berupa tombol, gambar, dll. Tujuannya adalah untuk memudahkan user menggunakan program yang dibuat tersebut.

Java Swing
Java Swing adalah librari java yang digunkan untuk menciptakan Grafik User Interface (GUI). Dengan Java Swing kita dapat membuat user interface yang cross platform atau OS independent. Artinya user interface yang kita buat dapat dijalankan pada system operasi apa saja (OS yang suport Java) dengan tampilan yang relative sama. Bahkan kita dapat membuat user interface yang menyerupai Windows XP, Mac OS atau Linux tanpa tergantung dari OS yang kita gunakan. SWING, adalah salah satu bagian dari Java Foundation Classes (JFC). Pada JFC ini juga terdapat fasilitas untuk menambahkan Rich Graphic Functionality.

Komponen Swing
Package dari Swing menyediakan banyak kelas untuk membuat aplikasi GUI. Package tersebut dapat ditemukan di javax.swing. Komponen Swing ditulis menyeluruh menggunakan Java. Kesimpulannya, program GUI ditulis menggunakan banyak kelas dari package Swing yang mempunyai tampilan look and feel yang sama meski dijalankan pada beda paltform. Lebih dari itu, Swing menyediakan komponen yang lebih menarik seperti color chooser dan option pane. Nama dari komponen GUI milik Swing hampir sama persis dengan komponen GUI milik AWT. Perbedaan jelas terdapat pada penamaan komponen. Pada dasarnya, nama komponen Swing sama dengan nama komponen AWT tetapi dengan tambahan huruf J pada prefixnya. Sebagai contoh, satu komponen dalam AWT adalah button class. Sedangkan pada Swing, nama komponen tersebut menjadi Jbutton class. Di sisi lain container adalah  jenis  komponen  yang  “menampung”  dan mengelola  komponen-komponen  lainnya.  Idealnya, suatu  komponen harus diletakkan di sebuah container agar ia dapat digunakan.Secara umum ada lima bagian dari Swing yang akan sering kita gunakan. Komponen atau bagian – bagian itu adalah:
  • Top-level Container, merupakan container dasar di mana komponen lainnya diletakan. Contoh Top-level container ini adalah Frame, Dialog dan Applet yang diimplementasi dalam class JFrame, Jdialog, dan JApplet.
  • Intermediate Container, merupakan komponen perantara di mana komponen lainnya akan diletakan. Salah satu contoh container ini adalah class JPanel.
  • Atomic Component, merupakan komponen yang memiliki fungsi spesifik dan biasanya user berinteraksi langsung dengan komponen jenis ini. Contohnya adalah JButton, JLabel, JTextField, dan JTextArea.
  • Layout Manager, berfungsi untuk mengatur bagaimana posisi dari komponen – komponen yang diletakan pada container. Secara default terdapat 5 macam layout yaitu berupa class BorderLayout, BoxLayout, FlowLayout, GridBagLayout, dan GridLayout.
  • Event Handling, untuk menangani event yang dilakukan oleh user misalnya menekan tombol, mengkilik mouse dan lain – lain.

Dalam aplikasi NetBeans terdapat menu Palette yang berisi Swing dan komponen-komponen penting didalamnya untuk membangun sebuah aplikasi menggunakan NetBeans, Berikut ini penjelasan dari masing-masing bidang yang ada di Palette NetBeans:





Swing Containers
Swing Containers ini menempatakan komponen-komponen yang berfungsi sebagai container / background.

NAMA
DESKRIPSI
Panel
Merupakan panel yang dapat digunakan sebagai papan dari suatu bidang / layar lain
Split Pane
Merupakan 2 tombol yang tebagi menjadi 2 sisi (kiri & kanan)
Toolbar
Merupakan bar yang dapat dimasukkan tool didalamnya, biasanya digunakan diatas layar
Internal Frame
Merupakan bingkai layar baru yang berada didalam bingkai utama
Tabbed Pane
Merupakan panel yang memiliki tab & bisa beralih dari tab 1 ke tab lainnya
Scroll Pane
Merupakan panel yang dapat di scroll baik horizontal ataupun vertikal
Desktop Pane
Merupakan container yang digunakan untuk membuat multi dokumen interface atau dekstop virtual
Layered Pane
Sebuah container yang memungkinkan setiap komponen didalamnya saling overlap jika diperlukan





Swing Controls
Swing Controls menempatkan komponen-komponen yang fungsinya untuk pengelolaan Swing.

NAMA
DESKRIPSI
Label
Sebuah kolom/area yang digunakan untuk menampilkan tulisan atau gambar
Toggle Button
Tombol yang memiliki 2 keterangan seperti saklar (ON/OFF)
Radio Button
Tombol yang berfungsi untuk memilih dan tidak memilih pilihan lainnya, tombol ini hanya dapat memilih satu dari sekian pilihan
Combo Box
Komponen yang digunakan sebagai dropdown list, bisa digunakan untuk memilih multiple selection
Text Field
Komponen yang digunakan sebagai input / bidang yang dapat diedit (menulis didalamnya)
Scroll Bar
Komponen yang menyesuaikan tampilan sebuah konten yang terbatas & menampilkan scroll
Progress Bar
Sebuah bar yang mengindikasi sebuah pekerjaan dengan menampilkan presentasi pekerjaan tersebut
Password Field
Sebuah bidang yang digunakan untuk menulis katasandi, tidak akan menampilkan karakter & diganti dengan tanda titik
Separator
Digunakan untuk keperluan umum seperti membatasi komponen & memberikan garis pemisah
Editor Pane
Bidang yang sering disebut textarea, biasa digunakan untuk menulis apapun didalamnya
Button
Sebuah tombol sederhana
Check Box
Kotak centang yang dapat dicentang atau tidak
Button Group
Class yang digunakan untuk membuat multi lingkup eksklusi satu set tombol
List
Menampilkan sebuah daftar & dapat dipilih lebih dari satu
Text Area
Tidak berbeda jauh dengan Editor Pane, sebuah kolom besar yang dapat digunakan untuk menulis
Slider
Pengguna dapat menggeser sebuah nilai secara grafik seperti membesar kecilkan volume
Formatted Field
Komponen yang memungkinkan untuk mengedit sebuah nilai didalamnya secara partikular
Spinner
Sebuah bidang input angka yang memiliki tombol naik dan turun untuk mengontrol angka tersebut
Text Pane
Bidang text yang dapat diisi dengan ilai dan menandai isi-isi tersebut
Tree
Sebuah direktori folder yang tersusun seperti pohon ketika memiliki folder didalam folder




Swing Menus
Swing Menus memiliki komponen-komponen yang dapat digunakan untuk keperluan menu / navigasi.

NAMA
DESKRIPSI
Menu Bar
Komponen untuk menampilkan menu dan item menu
Menu
Sebuah menu tunggal, bisa digunakan sebagai menu utama jika disisipkan submenu
Menu Item
Sebuah item menu tunggal didalam menu
Menu Item / CheckBox
Sebuah item menu tunggal atau kotak centang didalam menu
Menu Item / RadioButton
Sebuah item menu tunggal atau kotak centang didalam menu
Popup Menu
Layar munculan kecil yang menampilkan beberapa pilihan / menu
Separator
Keperluan umum untuk membatasi antara komponen dan memberikan garis pembatas





Swing Windows
Swing Windows menampilkan beberapa komponen yang digunakan untuk keperluan jendela (window) / layar.

NAMA
DESKRIPSI
Dialog
Sebuah jendela yang digunakan menampilkan dialog
Color Chooser
Jendela baru yang digunakan untuk memilih warna / memanipulasi
Option Pane
Jendela yang digunakan untuk menampilkan dialog dan opsi yang ditampilkan
Frame
Top Level Window, digunakan untuk bingkai window utama
File Chooser
Jendela baru untuk memilih sebuah file





Swing Fillers
Swing Fillers menampilkan komponen-komponen yang bisa digunakan sebagai pengisi.


NAMA
DESKRIPSI
Glue
Komponen yang tersedia untuk menggerakkan ke arah vertikal & horizontal
Horizontal Strut
Komponen yang memiliki lebar pasti dan dapat bergerak ke arah horizontal
Vertical Glue
Komponen yang memiliki lebar bebas & dapat bergerak  ke arah vertikal
Vertical Strut
Komponen yang memiliki lebar pasti dan dapat bergerak ke arah vertikal
Horizontal Glue
Komponen yang memiliki lebar bebas & dapat bergerak  ke arah horizontal
Rigid Area
Komponen yang memiliki ukuran pasti



Komentar

Postingan populer dari blog ini

DATABASE (Bagaimana Cara Menghubungkan Java dengan MySQL?)

Array & Blok Eksepsi Pada Javva