09. Dialog pada SWT : FileDialog

posted Nov 6, 2011, 4:27 AM by Editor KursusInternet   [ updated Nov 6, 2011, 7:11 AM ]

Pendahuluan

Seperti aplikasi rich client interface lainnya, SWT memiliki berbagai dialog yang telah memiliki fungsi khusus. Di dalam tiap dialog terdapat kombinasi berbagai widget yang digunakan untuk mencapai fungsi tersebut, misalkan DirectoryDialog yang digunakan untuk memilih folder, ColorDialog untuk memilih warna, FileDialog untuk memilih file, dan lain-lain.

Dari deskripsi di atas juga jelas bahwa tiap dialog tentunya akan mengembalikan suatu nilai / objek yang bisa kita olah lebih lanjut. 

Pada kesempatan kali ini, penulis akan memberikan contoh penggunaan FileDialog. Constructor pada  FileDialog menerima dua parameter yaitu shell dan modus yang digunakan seperti terlihat sebagai berikut.

        FileDialog(Shell parent, int style)

Parameter style merupakan modus dapat dipilih dari tiga konstanta berikut :
  • SWT.SAVE : akan menampilkan dialog penyimpanan file.
  • SWT.OPEN : akan menampilkan dialog untuk membuka file.
  • SWT.MULTI : akan menampilkan dialog yang dapat digunakan untuk memilih lebih dari satu file.

Contoh Penggunaan : FileDialog

Berikut adalah contoh kode Java penggunaan class FileDialog. 

ContohFileDialog.java

package com.kursusinternet.swt;

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Shell;

public class ContohFileDialog {
  Display display;
  Shell shell;
  List objList;
  
  class ContohListener implements MouseListener
  {

    @Override
    public void mouseDoubleClick(MouseEvent arg0) {            
    }

    @Override
    public void mouseDown(MouseEvent arg0) {   
            
        FileDialog dialog = new FileDialog(shell, SWT.MULTI);
        dialog.open();
        
        for(int i=0; i < dialog.getFileNames().length; i++)
          objList.add(dialog.getFileNames()[i]);
    }

    @Override
    public void mouseUp(MouseEvent arg0) {          
    }    
  }
  
  public void tampil()
  {
    display = new Display();
    shell = new Shell(display);
    shell.setText("Contoh Dialog");
    
    objList = new List(shell, SWT.SINGLE);
    objList.setBounds(1010400400);
    
    Button objButton = new Button(shell, SWT.CENTER);
    objButton.setText("Pilih File");
    objButton.addMouseListener(new ContohListener());
    objButton.setBounds(4201010030);
    
    shell.setSize(550,450);
    shell.open();
    
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        display.sleep();
      }
    }
    display.dispose();     
  }
  
  public static void main(String[] args) {
    new ContohFileDialog().tampil();
  }
}

Hasil Eksekusi


Berikut adalah video hasil eksekusi ContohFileDialog.java.


Sumber Referensi


~~ Selesai ~~
Comments