Membuat Button Input,Output, Hapus, Nama, Nim & Alamat Pada Netbeans

A. PENDAHULUAN
GUI (Graphical User Interface), adalah antarmuka pada sistem operasi atau komputer yang menggunakan menu grafis agar mempermudah para pengguna-nya untuk berinteraksi dengan komputer atau sistem operasi.

Kelebihan/keutamaan dan kekurangan dari GUI
Kelebihan GUI :
1. Desain Grafis lebih menarik.
2. GUI memungkinkan user untuk berinteraksi dengan komputer secara lebih baik.
3. Memudahkan pengguna.
4. Menarik minat pengguna.
5. Resolusi gambar yang tinggi.
Kekurangan GUI :
1. Memakan memory yang sangat besar.
2. Bergantung pada perangkat keras.
3. Membutuhkan banyak tempat pada layar komputer.
4. Tidak fleksibel.
Pengembangan applikasi dengan GUI :

saat ini tengah dikembangkan sebuah solusi baru untuk membantu pembangunan aplikasi GUI menggunakan PHP. Solusi baru tersebut adalah Klorofil Platform. Klorofil Platform dibangun oleh suatu komunitas yang bernama Klorofil Collaboration Project atau dikenal juga dengan nama Klorofil. Di dalam Klorofil Platform terdapat sebuah GUI framework yang bernama gambArt. GUI framework inilah yang dapat kita gunakan untuk membangun aplikasi GUI menggunakan PHP

Membuat User Interface dengan Swing
Hingga saat ini, kita selalu membuat program berupa console based dimana  interaksi dengan user selalu memakai commmand prompt dan menggunakan teks. Pada kenyataan sebenarnya, jika kita ingin membuat program yang terlihat profesional dan berkualitas, penggunaan GUI dapat dikatakanmerupakan keharusan. User pada umumnya lebih senang berinteraksi dengan GUI dibandingkan dengan sekumpulan teks karena dengan GUI, program akan terlihat lebih menarik dan terkesan user friendly.
Komponen Dasar Swing
Secara umum terdapat 5 bagian swing yang akan sering digunakan yaitu:
1. Top-level Container, merupakan container dasar dimana komponen lainnya akan diletakkan. Contoh container seperti ini, yaitu Frame, Dialog, dan Applet yang diimplementasikan berupa class Jframe, Jdialog, dan Japplet.
2. Intermediate Container, merupakan container perantara dimana komponen lainnya akan diletakkan, salah satu contohnya pane yang diimplementasikan berupa class Jpanel.
3. Atomic Component, merupakan komponen yang memiliki fungsi yang spesifik, dimana umumnya user langsung berinteraksi dengan komponen jenis ini. Contoh Jbutton, Jlabel,JtextField, dan JtextArea
4. Layout Manager, berfungsi untuk mengatur bagaimana tata letak atau posisi komponen yang akan diletakkan, satu sama lain di dalam suatu container. Contoh BorderLayout, BoxLayout,FlowLayout, GridBagLayout, dan GridLayout.
5. Event Handling, untuk menangani event yang dilakukan oleh user seperti menekan tombol, memperbesar atau memperkecil ukuran frame dll

Implementasi From, JFrame dan JLabel
From, adalah lembar desain tampilan dari program yang dibuat. From ini menjadi pondasitempat diletakkan control-kontrol yang dimiliki oleh JCreator sesuai dengan yang diinginkan.
JFrame Berfungsi sebagai layar utama (main window) untuk menjalankan aplikasi java GUI, Dapat diletakkan komponen GUI sbg interface, antara lain TextField, Button, CheckBox dan lainnya
 JLabel, Label menampilkan teks pada layar dengan konstruktor sbb :
JLabel();
JLabel(String teks);
JLabel(String teks, int alignment);
Button merupakan kelas yang digunakan untuk memasang sebuah tombol pada window kita, Yang tercetak agak menimbul pada layar JFrame, lalu Button tersebut diletakkan
pada sebuah panel dan ditempelkan pada window bagian bawah.

Membuat User Interface dengan Swing
Hingga saat ini, kita selalu membuat program berupa console based dimana interaksi dengan user selalu memakai commmand prompt dan menggunakan teks. Pada kenyataan sebenarnya, jika kita ingin membuat program yang terlihat profesional dan berkualitas, penggunaan GUI dapat dikatakan merupakan keharusan. User pada umumnyalebih senang berinteraksi dengan GUI dibandingkan dengan sekumpulan teks karena dengan GUI, program akan terlihat lebih menarik dan terkesan user friendly.
Komponen Dasar Swing
Secara umum terdapat 5 bagian swing yang akan sering digunakan yaitu:
1. Top-level Container, merupakan container dasar dimana komponen lainnya akan
diletakkan. Contoh container seperti ini, yaitu Frame, Dialog, dan Applet yang diimplementasikan berupa class Jframe, Jdialog, dan Japplet.
2. Intermediate Container, merupakan container perantara dimana komponen
lainnya akan diletakkan, salah satu contohnya pane yang diimplementasikan
berupa class Jpanel.
3. Atomic Component, merupakan komponen yang memiliki fungsi yang spesifik,
dimana umumnya user langsung berinteraksi dengan komponen jenis ini. Contoh
Jbutton, Jlabel,JtextField, dan JtextArea
4. Layout Manager, berfungsi untuk mengatur bagaimana tata letak atau posisi
komponen yang akan diletakkan, satu sama lain di dalam suatu container. Contoh
BorderLayout, BoxLayout,FlowLayout, GridBagLayout, dan GridLayout.
5. Event Handling, untuk menangani event yang dilakukan oleh user seperti
menekan tombol, memperbesar atau memperkecil ukuran frame dll
What is event?
Yang dimaksud dengan event adalah:
• Ketika user melakukan aksi terhadap sebuah user interface (misalnya meng-klik
mouse atau menekan sebuah tombol), maka tindakan ini akan memunculkan sebuah
event.
• Event adalah OBJEK yang mendeskripsikan sebuah kejadian (peristiwa yang terjadi)
• Event Source adalah pembangkit sebuah event, misalnya mouse click pada sebuah
button akan membangkitkan sebuah ActionEvent dgn button sbg Event Source-nya.
• Event Handler adalah sebuah method yang menerima sebuah objek event,
menterjemahkan, dan kemudian memproses interaksi user. Event Listener
• Swing menghandle event dengan sekumpulan interface yang disebut dengan Event
Listeners
• Setiap kategori event, terdapat sebuah interface listener yang bersesuaian.
• Listener tsb harus diimplementasikan oleh class dari objek yang akan menerima event
tersebut.
• Listener ini akan menetapkan method mana yang harus didefinisikan dalam sebuah
class yang sesuai untuk menerima tipe event tersebut.
• Method–method ini akan dipanggil ketika event ybs terjadi.
Event Listener
• Swing menghandle event dengan sekumpulan interface yang disebut dengan Event
Listeners
• Setiap kategori event, terdapat sebuah interface listener yang bersesuaian.
• Listener tsb harus diimplementasikan oleh class dari objek yang akan menerima event
tersebut.
• Listener ini akan menetapkan method mana yang harus didefinisikan dalam sebuah
class yang sesuai untuk menerima tipe event tersebut.
• Method–method ini akan dipanggil ketika event yg bisa terjadi.

B. Percobaan
Percobaan 1:
Coding :
 





Hasil :
Tampilan Awal:

Setelah Diisi:

Setelah Dihapus:

Percobaan 2:
Coding:



 Hasil :
Tampilan Awal:

Setelah Diisi:

Setelah Dihapus Nama & Nim:

Setelah Dihapus Hobi & Alamat:
 

C. Analisa
Program 1

Coding diatas memiliki maksudnya yaitu KeyReleased apabila jTextField1 di isi dengan inputan dari keyboard, maka akan di tampilkan pada jLabel1 karena di setText dari getText jTextField1 tadi.

Setting coding jButton1MouseClicked maksudnya apabila jButton diklik maka akan menjalankan kode selanjutnya. Kode jLabel1.setText(“OUTPUT”) dan jTextField1.setText(“ ”) teksnya akan diset ulang menjadi OUTPUT pada jLabel1 dan kosong pada jTextField1.

Dari hasil output diatas dapat diterangkan bahwa apabila kita mengetikan karakter pada jTextField maka akan ditampilkan pada jLabel. Dan saat kita menekan jbutton “HAPUS” maka pada jlabel akan menjadi “OUTPUT” dan pada jtextfield akan menjadi kosong.

Program 2

Coding diatas memiliki maksudnya yaitu KeyReleased apabila jTextField1 di isi dengan inputan dari keyboard, maka akan di tampilkan pada jLabel2 karena di setText dari getText jTextField1 tadi.

Setting coding jButton1MouseClicked maksudnya apabila jButton diklik maka akan menjalankan kode selanjutnya. Kode jLabel12.setText(“ ”), jLabel13.setText(“ ”), jTextField1.setText(“ ”) dan jTextField2.setText(“ ”) akan dihapus sekaligus kedua teks pada jlabel dan kedua teks pada jtextfield dan akan diset ulang menjadi kosong pada kedua jlabel dan kosong pada kedua jTextField tersebut.

Dari hasil output diatas dapat diterangkan bahwa apabila kita mengetikan karakter pada jTextField maka akan ditampilkan pada jLabel. Dan saat kita menekan jbutton “Hapus Nama & Nim” maka pada jlabel dan jtextfield Nama & Nim akan menjadi menjadi kosong, begitu juga saat kita menekan jbutton “Hapus Hobi & Alamat”.

D. Kesimpulan
Dari laporan yang saya susun dapat disimpulkan bahwa GUI biasa digunakan dalam pembuatan program aplikasi, GUI juga dapat diartikan sebagai suatu metode untuk antar-muka computer basis grafis.  Kita dapat menampilkan berbagai komponen GUI menggunakan frame.