有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Joption窗格显示选项对话框

我想使用JOptionPane创建一个showOptionDialog,它有两个按钮:公制和英制。如果单击Metric,则将加载Metric GUI。相反,如果单击Imperial,则将加载Imperial GUI

我该怎么做? 非常感谢


共 (2) 个答案

  1. # 1 楼答案

    Object[] options = {"Metric","Imperial"};
    int n = JOptionPane.showOptionDialog(null,
                "A Message",
                "A Title",
                JOptionPane.YES_NO_CANCEL_OPTION,
                JOptionPane.DEFAULT_OPTION,
                null,
                options,
                options[1]);  
    
    System.out.println(n);  
    
    JFrame metric = new JFrame("Metric");  
    metric.setBounds(0, 0, 320, 240);  
    
    JFrame imperial = new JFrame("Imperial");  
    imperial.setBounds(0, 0, 320, 240);  
    
    if(n==0){  
         metric.setVisible(true);  
    }else if(n==1){
        imperial.setVisible(true);
    }else{
        System.out.println("no option choosen");
    }
    
  2. # 2 楼答案

    int choice = JOptionPane.showOptionDialog(null, //Component parentComponent
                                   "Metric or Imperial?", //Object message,
                                   "Choose an option", //String title
                                   JOptionPane.YES_NO_OPTION, //int optionType
                                   JOptionPane.INFORMATION_MESSAGE, //int messageType
                                   null, //Icon icon,
                                   {"Metric","Imperial"}, //Object[] options,
                                   "Metric");//Object initialValue 
    if(choice == 0 ){
       //Metric was chosen
    }else{
       //Imperial was chosen
    }