Tuesday, September 16, 2008

Pemrograman GUI pada Java Bagian 2 - Menggunakan JFrame

Menggunakan JFrame

Kelas JFrame merupakan kelas yang paling sering digunakan untuk membuat program Java jenis aplikasi. Nama lengkapnya adalah javax.swing.JFrame. Silsilah dari kelas JFrame adalah:

java.lang.Object
_
java.awt.Component
_
java.awt.Container
_
java.awt.Window
_
java.awt.Frame
_
javax.swing.JFrame


Ada beberapa konstruktor yang dapat digunakan, yaitu:

1. JFrame()
Membuat frame baru dengan inisialisasi kosong. Semua properti akan diatur kemudian.
2. JFrame(GraphicsConfiguration gc)
Membuat frame baru dengan memberikan nilai awal untuk GraphicsConfiguration.
3. JFrame(String title)
Membuat frame baru dengan memberikan nilai awal untuk title bar.
4. JFrame(String title, GraphicsConfiguration gc)
Membuat frame baru dengan memberikan nilai awal untuk title dan GraphicsConfiguration.

Contoh menggunakan kelas JFrame - JFrame dengan TitleBar


1. Nama file: Contoh_2_1.java


2. Nama file: JFrameTitleBar.java




Cara menjalankan:

  1. Buat direktori dengan nama, misalnya bab2
  2. Buat direktori baru dengan nama src dan build di dalam direktori bab2
  3. Buat direktori baru dengan nama classes di dalam direktori build
  4. Ketik kedua file JFrameTitleBar.java dan Contoh_2_1.java dengan editor yang paling disukai kemudian simpan pada direktori src
  5. Masuk ke direktori src melalui terminal (IGOS Nusantara atau Linux) atau Command Prompt (Windows)
  6. Jika pada IGN atau Linux, ketikkan perintah berikut: javac –d ../build/classes *.java
  7. Jika pada Windows, ketikkan perintah berikut: javac –d ..\build\classes *.java
  8. Untuk menjalankan, masuk ke direktori classes
  9. Ketik perintah berikut: java bab2.Contoh_2_1
Setelah langkah ke-9 akan muncul seperti gambar berikut:
Keterangan JFrameTitleBar.java

1. package bab2;
Kata kunci package digunakan untuk mendeklarasikan paket baru. Pada contoh tersebut nama paket adalah bab2. Menggunakan paket sifatnya opsional. Namun, sangat dianjurkan untuk menggunakan paket pada setiap program Java yang dibuat mulai Java versi 1.4.

2. import javax.swing.JFrame;
Kata kunci import digunakan apabila pembuat program tidak ingin menuliskan nama lengkap untuk setiap kelas yang digunakannya. Misalnya apabila ingin menggunakan kelas javax.swing.JFrame, maka cukup ditulis dengan JFrame jika sudah dilakukan import.

3. public class JFrameTitleBar extends JFrame
Baris perintah tersebut digunakan untuk mendeklarasikan kelas baru dengan nama JFrameTitleBar yang merupakan turunan dari kelas JFrame, sehingga silsilah kelas JFrameTitleBar adalah sebagai berikut:

java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
bab2.JFrameTitleBar

4. super("Contoh 2.1: JFrame dengan Titlebar");
Kata kunci super() digunakan untuk memanggil konstruktor kelas induk dari kelas yang dibuat sekarang. Dalam hal ini, kelas induknya adalah JFrame. Pemanggilan metode super() harus diletakkan pada baris pertama.

5. setSize(400, 200);
Metode setSize(int panjang, int lebar) merupakan metode yang diwariskan dari kelas java.awt.Window. Metode ini digunakan untuk mengatur ukuran panjang dan lebar window dalam satuan piksel.

6. setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
Metode setDefaultCloseOperation(int) digunakan untuk menangani kejadian saat tanda silang di pojok kanan atas pada window diklik. Ada beberapa konstanta dari kelas WindowConstants yang dapat digunakan sesuai dengan yang diinginkan.

7. setVisible(true);
Metode setVisible() merupakan metode yang diwariskan dari kelas java.awt.Window. Metode ini digunakan untuk memunculkan atau menyembunyikan window. Argumen yang dapat dimasukkan adalah true atau false.

Keterangan Contoh_2_1.java

public class Contoh_2_1 implements Runnable
{
public void run()
{
……..
}
public static void main(String args[])
{
SwingUtilities.invokeLater(new Contoh_2_1());
}
}
Baris perintah tersebut digunakan untuk membuat thread agar aman saat menggunakan komponen Swing. Dalam setiap aplikasi setidaknya memiliki satu buah thread. Keterangan lebih lanjut dapat dilihat pada situs: http://java.sun.com/javase/6/docs/api/javax/swing/package-summary.html#threading. Untuk selanjutnya, apabila menggunakan komponen Swing, maka akan menggunakan cara yang sama seperti baris perintah tersebut.

1. JFrame.setDefaultLookAndFeelDecorated(true);
Metode setDefaultLookAndFeelDecorated(boolean lafd) ini digunakan untuk memastikan bahwa JFrame tersebut akan mengikuti dekorasi window (border, judul dan sebagainya) sesuai dengan look and feel yang diaktifkan sekarang. Jika lafd diisi dengan true, maka tampilan dekorasi window akan ditampilkan sesuai dengan look and feel yang diaktifkan. Apabila tidak ada look and feel tertentu yang diaktifkan, maka akan digunakan look and feel standar Java yaitu OceanTheme seperti yang dapat dilihat pada Gambar 2.2. Tampilan dekorasi window akan sama pada setiap sistem operasi yang digunakan, misalnya Linux dan Windows.

2. JFrameTitleBar jftb = new JFrameTitleBar();
Baris perintah tersebut digunakan untuk membuat objek dari kelas JFrameTitleBar dengan nama jftb dan sekaligus menginisialisasi dengan memanggil konstruktornya.

Download source

Tuesday, September 9, 2008

Pemrograman GUI pada Java Bagian 1 - Mengenal Top Level Container pada Swing

Program yang dibuat sebelumnya merupakan contoh dari pemrograman pada level konsol. Untuk selanjutnya pemrograman pada level konsol tidak dibahas di sini.

Terdapat dua macam tampilan (User Interface) pada Java, yaitu Character User Interface (CUI) dan Graphical User Interface (GUI).

Pada CUI, seorang user berinteraksi dengan sistem menggunakan command. Seorang user harus mengingat semua perintah yang digunakan untuk berinteraksi dengan sistem. Contoh sistem operasi dengan CUI adalah MS-DOS. Sedangkan pada GUI, disebut juga “picture-oriented” seorang user berinteraksi dengan sistem menggunakan “gambar visual” tanpa harus menghafal setiap perintah yang digunakan. Perintah-perintah yang digunakan untuk berinteraksi dengan sistem dapat dijalankan dengan mengklik mouse. Contoh sistem operasi dengan GUI adalah Microsoft Windows.

Saat ini hampir semua sistem operasi menggunakan GUI. Suatu aplikasi menggunakan elemen-elemen GUI untuk berinteraksi dengan sistem operasi.

Untuk menangani pemrograman window pada Java dapat digunakan dua cara, yaitu dengan Abstract Window Toolkit (AWT) dan dengan Java Foundation Classes (JFC) atau disebut Swing.
Pada Java 1.0, seorang programmer menangani pemrograman window menggunakan AWT. Tampilan window pada komponen AWT berbeda untuk masing-masing plattfom atau sistem operasi. Karena setiap sistem operasi menggunakan sistem window yang berbeda. Misalnya komponen AWT yang dijalankan di lingkungan Microsoft Windows akan tampak berbeda apabila dijalankan di lingkungan Macintosh atau Linux. Komponen AWT ini terdapat pada paket java.awt.

Untuk mengatasi perbedaan tampilan (look and feel) pada masing-masing plattfom, maka diperkenalkanlah Java Foundation Classes (JFC) yang pertama kali dikeluarkan pada tahun 1997. Untuk selanjutnya JFC ini disebut dengan komponen Swing. Dengan komponen swing, maka tampilan aplikasi menjadi sama pada masing-masing plattfom (Plattform Independent). Komponen swing ini terdapat pada paket javax.swing yang dapat digunakan mulai java 1.2.

Contoh komponen GUI pada swing adalah seperti berikut:



Masih ada beberapa komponen lain selain yang terdapat pada gambar tersebut yang akan dibahas kemudian. Untuk dapat menggunakan komponen tersebut diperlukan suatu kontainer. Kontainer adalah komponen yang dapat ditempati komponen lain. Pada swing terdapat 4 jenis Top Level Container, yaitu: JFrame, JDialog, JWindow dan JApplet. Top Level Container adalah suatu kontainer yang dapat berdiri sendiri.

Monday, September 8, 2008

Program Hello World, Program java yang Pertama

Langkah awal untuk mempelajari Java adalah dengan membuat program Java yang paling sederhana. Misalnya seperti totorial di Sun dengan membuat program HelloWorld. Contohnya seperti berikut:

public class HelloWorld
{

public static void main(String[] args)
{
System.out.println("Hello World!");
}
}

Jika program tersebut sukses dan muncul tulisan "Hello World!" pada layar monitor, maka Anda dapat mempelajari lebih jauh tentang Java.


HelloWorld.java
Bersambung...

..==(UMAR FAISOL)==..