Rabu, 14 Maret 2012

GUI EVENT HANDLING

pengertian


Event Handling merupakan konsep penanganan suatu action yang terjadi. Jadi suatu program akan berjalan saat sesuatu terjadi, misalnya saat tombol diklik, saat combo box dipilih dan sebagainya. Java memiliki beberapa jenis Event Handling, salah satunya adalah class ActionListener yang menangani aksi terhadap tombol. 


konsep dasar,Penerapan Dan contoh

Untuk  memahami  model,  pertama-tama  mari  kita  pelajari  melalui  tiga
komponen utamanya.

1. Event Source
   Event  source  mengacu  pada  komponen  GUI  yang  meng-generate  event.  Sebagai
contoh, jika user menekan tombol, event source dalam hal ini adalah tombol.
2. Event Listener/Handler
   Event  listener menerima  berita  dari  event-event  dan  proses-proses  interaksi  user.
   Ketika  tombol  ditekan,  listener  akan  mengendalikan  dengan  menampilkan  sebuah
informasi yang berguna untuk user.

3. Event Object
   Ketika sebuah event  terjadi (misal, ketika user berinteraksi dengan komponen GUI),
sebuah  object  event  diciptakan.  Object  berisi  semua  informasi  yang  perlu  tentang
event yang telah terjadi. Informasi meliputi tipe dari event yang telah terjadi, seperti
ketika mouse  telah di-klik. Ada beberapa  class event   untuk kategori  yang berbeda
dari user action. Sebuah event object mempunyai tipe data mengenai salah satu dari
class ini.





Contoh program :
import javax.swing.*;
import java.awt.event.*;
public class Main extends JFrame{
private JButton tombolKu = new JButton(“OK”),
tombol2 = new JButton(“Cancel”);
private JLabel labelKu = new JLabel(” << ANDA TELAH MEMILIH OK >> “),
label2 = new JLabel(” << ANDA TELAH MEMILIH CANCEL >> “);
private JPanel panelKu = new JPanel();
Main() {
super(“Membuat Tombol”);
panelKu.setLayout(null);
setSize(450, 140);
setDefaultCloseOperation(EXIT_ON_CLOSE);
labelKu.setBounds(110,20,450,25);
label2.setBounds(94,20,450,25);
labelKu.setVisible(false);
label2.setVisible(false);
tombolKu.setBounds(90,70,100,25);
tombol2.setBounds(250,70,100,25);
tombol2.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent evn){
label2.setVisible(true);
tombolKu.setEnabled(false);
}
});
tombolKu.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent evn){
labelKu.setVisible(true);
tombol2.setEnabled(false);
}
});
panelKu.add(labelKu);
panelKu.add(tombolKu);
panelKu.add(tombol2);
panelKu.add(label2);
getContentPane().add(panelKu);
setVisible(true);
}
public static void main(String[] args) {
Main evenKu = new Main();
}
}

Sedikit penjelasan, pada program diatas saya menggunakan event Action dengan 2 kejadian, yaitu setEnabled(false) dan setVisible(true) saat menekan tombol OK atau cancel.

Inilah GUI JAVA

Konsep Dasar GUI

Java GUI merupakan sebuah konsep yang memadukan dua buah teknologi yang ada yaitu Java dan GUI (Graphical User Interface). Seperti kita ketahui bersama Java merupakan bahasa pemrograman yang sudah mulai banyak digunakan saat ini karena beberapa kelebihan yang dimiliki seperti kemampuan multiplatform yang dimiliki, OOP, pustaka Class yang lengkap dsb.

Dapat disimpulkan bahwa Java GUI adalah pemrograman dengan bahasa Java yang dibuat menggunakan aplikasi yang berbasiskan GUI.  Tujuannya adalah menambahkan komponen-komponen yang tidak bisa dibuat dalam basis text. Komponen-konponen tersebut bisa berupa tombol, gambar, dll. Tujuannya  adalah untuk memudahkan user menggunakan program yang dibuat tersebut.

Pengertian GUI

Antar muka komputer yang berbasiskan grafis. Adalah citra grafis yang ditampilkan di layar komputer yang memungkinkan untuk mengakses aplikasi software dengan memakai menu dropdown, dialog box, radio button, check box, panel, tabs, toolbar, icon shortcuts dan tool lain. Atau bisa juga dikatakan jenis antarmuka pengguna yang memungkinkan orang untuk berinteraksi dengan program dengan lebih banyak dengan gambar daripada perintah teks.
    
Sebuah GUI grafis menawarkan ikon, dan visual indikator, sebagai lawan dari antarmuka berbasis teks. Contoh perangkat yang menggunakan GUI:  perangkat genggam seperti MP3 Players, Portable Media Player dan perangkat Permainan. GUI ini dimulai pertama kali dengan X Windows hasil penelitian di MIT, kemudian Macintosh, Sun View, lalu disusul oleh Microsoft Windows, dan sistem operasi lainnya.




AWT

AWT merupakan singkatan dari Abstract Window Toolkit (meskipun orangdatang dengan memiliki banyak  ekspansi lainnya). AWT ini sekarang merupakan bagian dari Java Foundation Classes (JFC). API standar untuk menyediakan antarmuka pengguna grafis (GUI) untuk program JavaAWT juga toolkit GUI untukbeberapa profil Java ME.

contoh penggunaan AWT :
import java.awt.*;
public class FlowAp extends Frame{
public static void main(String argv[]){
            FlowAp fa=new FlowAp();
            //Change from BorderLayout default
            fa.setLayout(new FlowLayout());
            fa.setSize(400,300);
            fa.setVisible(true);
    }
    FlowAp(){
                add(new Button("SATU"));
                add(new Button("DUA"));
                add(new Button("TIGA"));
                add(new Button("EMPAT"));
                add(new Button("LIMA"));
                add(new Button("ENAM"));
                add(new Button("TUJUH"));
                add(new Button("DELAPAN"));
                add(new Button("SEMBILAN"));
                add(new Button("SEPULUH"));
        }//End of constructor
}//End of Application
 
 
SWING

Swing adalah bagian utama Java GUI widget toolkit.Swing adalah bagian dari Oracle's Java Foundation Classes (JFC)-API untuk menyediakan  graphical user interface (GUI) untuk program Java. Swing dikembangkan untuk menyediakan satu set yang lebih canggih dari komponen GUI dari Abstract Window Toolkit (AWT). 
 
Contoh penggunaan Swing :
 
public static void main(String[] args) {
        SwingExample se = new SwingExample();
        // Schedules theimport javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.SwingUtilities; public class SwingExample implements Runnable { @Overridepublic void run() { // Create the window JFrame f = new JFrame ("Hello, World!"); // Sets the behaviour for when the window is closedf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // add a label and a buttonf.getContentPane().add(new JLabel("Hello, world!")); f.getContentPane().add(new JButton("Press me!")); // arrange the components inside the window f.pack(); //By default, the window is not visible. Make it visible. f.setVisible(true); } application to be run at the correct time in the event queue.
        SwingUtilities.invokeLater(se);
    }
}
 

SWT
 
Standard Widget Toolkit (SWT) adalah toolkit widget grafis untuk digunakan dengan platform JavaIni pada awalnya dikembangkan oleh IBM dan sekarangdikelola oleh  Eclipse Foundation in tandem with the Eclipse IDE. Ini adalah sebuah alternatif untuk Window Toolkit Abstrak (AWT) dan Swing Java GUI toolkitsdisediakan oleh Sun Microsystems sebagai bagian dari Java Platform, Standard Edition.
 
Contoh penggunaan SWT :
  
import org.eclipse.swt.*;
import org.eclipse.swt.widgets.*;
 
public class HelloWorld 
{
   public static void main (String[] args) 
  {
      Display display = new Display();
      Shell shell = new Shell(display);
      Label label = new Label(shell, SWT.NONE);
      label.setText("Hello World");
      label.pack();
      shell.pack();
      shell.open();
      while (!shell.isDisposed()) 
      {
         if (!display.readAndDispatch()) display.sleep();
      }
      display.dispose();
   }
}
 
 
 
Sumber? Dari berbagai Sumber tentunya 
 

All About Stream IO

KONSEP DASAR STREAM I/O

Stream adalah representasi abstrak dari aliran data yang berjalan dari sumber (input stream) ke tujuan (output stream)

Contohnya :
-Membaca dan menulis file di dan ke harddisk
-Membaca dan menulis teks ke console
-Membaca dan menulis melalui network


Untuk membaca, program membuka stream pada sumber ( file, memory, socket) dan membaca informasi secara sekuensial.

Untuk menulis, program mengirim informasi ke tujuan dengan cara membuka stream tujuan, selanjutnya menulis informasi secara sekuensial.

Byte Stream
Terdiri dari Kelas InputStream, OutputStream, beserta turunannya:
  Character Stream :
InputStream dan OutputStream adalah abstract class untuk stream I/O, yaitu untuk membaca dan menulis data dari dan ke file.
Untuk membaca digunakan class yang mengimplementasikan InputStream, contoh : FileInputStream.
Untuk menulis digunakan class yang mengimplementasikan OutputStream, contoh : FileOutputStream.

Contoh = cara membaca File: FileInputStream :
1. Definisikan nama file yang akan dibaca melalui class File, atau nama file lengkap dengan path.
2. Periksa apakah file tersebut ada (exist) dan tipenya adalah file (bukan direktori).
3. Siapkan obyek FileInputStream untuk membaca isi file.
4. Baca input dengan menggunakan method read(), dan bila tidak ada input lagi, FileInputStream memberikan indikator -1 sebagai tanda tidak ada lagidata yang akan dibaca.
5. Gunakan method close() untuk menutup FileStream.