1 /** 2 * 对话框 - 学习笔记 3 * @author Wfei 4 * 5 */ 6 public class JoptionPaneKnow extends JFrame 7 { 8 public JoptionPaneKnow() 9 { 10 init(); 11 12 this.setLayout(null); 13 this.setSize(400, 400); 14 //这里设置为null的意思是:该this是相对于那个父窗口居中 15 this.setLocationRelativeTo(null); 16 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 17 18 /***************************************简介********************************************/ 19 //对话框可以直接使用静态方法,不用实例化 20 //四个参数分别为: 21 //1.null:即该对话框是相对于哪个窗口居中的 22 //2、3.对话框的消息内容、对话框的标题 23 //4.消息的类型:信息、警告、错误等 24 //5.对话框中显示的图标,即图片 25 JOptionPane.showMessageDialog(null, "消息内容", "消息的标题(该窗体的标题)", JOptionPane.INFORMATION_MESSAGE, null); 26 /*************************确认对话框*********************************/ 27 //其中的第四个参数:即对话框中会显示的按钮 28 //返回值option,即第四个参数中:用户点击的按钮,【用户x掉对话框,则返回-1】 29 int option = JOptionPane.showConfirmDialog(null, "消息内容", "消息的标题(该窗体的标题)", JOptionPane.OK_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE, null); 30 if (option == JOptionPane.OK_OPTION) 31 { 32 //用户选择点击了【确认】按钮 33 System.out.println(option); 34 } 35 else { 36 System.out.println(option); 37 } 38 /*************************输入对话框*********************************/ 39 //该对话框被我混用了,不应该有最后一个参数 40 //返回值str,如果用户不输入并点击确认,返回"",如果用户点击取消或x掉,返回null 41 String str = JOptionPane.showInputDialog(null, "我是提示内容", "我是初始值",JOptionPane.INFORMATION_MESSAGE); 42 System.out.println(str); 43 //返回值同上 44 String[] objs = new String[]{"我是选项AA","我是选项BB","我是选项CC"}; 45 Object value = JOptionPane.showInputDialog(null, "我是提示内容", "我是标题", JOptionPane.INFORMATION_MESSAGE, null, objs, objs[0]); 46 System.out.println(value); 47 /*************************多个选择按钮 - 同上,返回值是数组(即选择项所在数组)索引*********************************/ 48 } 49 public void init() 50 { 51 52 } 53 public static void main(String[] args) 54 { 55 JoptionPaneKnow joptionPaneKnow = new JoptionPaneKnow(); 56 joptionPaneKnow.setVisible(true); 57 } 58 59 }