我遇到了这个问题,我在 OptionDialog 模式下使用了 JOptionPane,但我无法设置为默认选项,如果我选择右上角的 x,它会自行关闭;这是因为在 showOptionDialog 的声明中,它使我仅选择包含我的选择的 Object[] 数组之一,这是代码
Object[] options = {"Vacanza","Cena","Prestazione","Bene"};
int choice = JOptionPane.showOptionDialog(frame,"Nuovo Prodotto","Scegli il prodotto",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,null,options,options[0]);
if (choice == 0) {
//things to do }
else if (choice == 1) {
//things to do }...
现在我必须将 showoptiondialog 的最后一个参数设置为我的选择之一,然后如果我选择右上角的 X,当我只想关闭它而不执行任何操作时,它无论如何都会执行默认选择,我该如何修复这群家伙?请帮助我
最佳答案
我尝试了这个示例代码来测试您正在尝试的内容。当我单击 X 时,它会打印出“选择了其他内容”。
也许我不明白你的问题。你能澄清一下吗?
import javax.swing.*;
public class Helloworld {
static JFrame frame;
public Helloworld(){
}
public void run(){
Object[] options = {"Vacanza","Cena","Prestazione","Bene"};
int choice = JOptionPane.showOptionDialog(
null,
"Nuovo Prodotto",
"Scegli il prodotto",
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
options,
options[0]);
if(choice == 0){
System.out.println("0 selected");
}
else{
System.out.println("Something else selected");
}
}
public static void main(String[] args) {
Helloworld hw = new Helloworld();
hw.run();
}
}
关于java - 如何将 JOptionPane.showOptionDialog 的默认选择更改为 default_close_operation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21438619/