Mari kita belajar tentang tentang JOptionPane dan penggunaannya pada Swing Java.
JOptionPane merupakan class yang digunakan sebagai standar dialog box untuk memberikan informasi kepada pengguna aplikasi. Sebenarnya JOptionPane memiliki banyak method, dan kebayakan method tersebut static method. Berikut ini 4 method dari JOptionPane yang sering digunakan.
- showConfirmDialog
- showInputDialog
- showMessageDialog
- showOptionDialog
Untuk parameter dari 4 method tersebut mempunyai pattern yang sama. Dan setiap method tersebut memiliki 4 – 7 varian tergantung dari jumlah parameter setiap method ( kecuali showOptionDialog yang cuma memiliki satu variant) . Berikut ini beberapa parameter yang digunakan pada 4 method tersebut.
- parentComponent : mendefinisikan component yang menjadi parent dari dialog box. Jika diisi dengan null, maka secara default Frame akan menjadi parent component.
- message : merupakan message yang akan ditampilkan dalam dialog box. Message bisa berupa String. Tapi type sebenarnya dari parameter ini adalah Object class.
- title : merupakan title untuk dialog box
- initialValue : merupakan input value
- messageType : mendefinisikan style dari message. Jenis dari messageType sebagai berikut ERROR_MESSAGE, INFORMATION_MESSAGE, WARNING_MESSAGE, QUESTION_MESSAGE, PLAIN_MESSAGE
- optionType : mendefinisikan kumpulan button option yang muncul pada dialog box. Nilai dari parameter sebagai berikut. DEFAULT_OPTION, YES_NO_OPTION, YES_NO_CANCEL_OPTION, OK_CANCEL_OPTION ( Nilai dari variable ini dapat di-customize)
- Berikut ini contoh codenya. ( Kembali kedasar, tanpa menggunakan pallete pada NetBeans )
Nama file : JOptionDemo.java
/** * * @author Taeyeon */ import java.awt.Component; import java.awt.FlowLayout; import javax.swing.JComponent.*; import javax.swing.JFrame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JOptionPane; public class JOptionDemo extends JFrame { public JOptionDemo(String title){ super(title); setSize(500,100); JButton button1 = new JButton("Click Me!"); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { JOptionPane.showMessageDialog((Component) event.getSource(),"Selamat Pagi Dunia","Message Dialog example",3); } }); JButton button2 = new JButton("What is your name?"); button2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { String nameUser = JOptionPane.showInputDialog((Component)event.getSource(),"Input Your Name" ); if(nameUser!=null && nameUser!=""){ JOptionPane.showMessageDialog((Component) event.getSource(),"Arigatou "+ nameUser); }} }); JButton button3 = new JButton("Close Application"); button3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { int option = JOptionPane.showConfirmDialog((Component)event.getSource(), "Close Application?"); if (option == JOptionPane.YES_OPTION){ System.exit(0); } else if(option==JOptionPane.NO_OPTION){ //Do Nothing } } }); setLayout(new FlowLayout(FlowLayout.CENTER)); add(button1); add(button2); add(button3); } public static void main(String[] args){ new JOptionDemo("Dialog Demo").setVisible(true); } }
0 komentar:
Posting Komentar