JOptionPane选择选项不起作用

时间:2013-07-09 01:58:32

标签: java swing options

试图让它工作,这是我的GUI的最后一个方面,并不完全确定这一切是如何运作的:L这是我的代码。 “youtube,facebook,twitter”部分是字符串调用btw。 基本上正在发生的是facebook选项打开twitter和facebook。

public static void SocialMedia(){
    Object[] possibleValues = { "Twitter", "YouTube", "FaceBook" };
    Object selectedValue = JOptionPane.showInputDialog(null,"Where would you like to go?", "",JOptionPane.QUESTION_MESSAGE, null,possibleValues, possibleValues[0]);
    if (selectedValue != null) { 
        if (selectedValue.toString().equals(possibleValues[2])) {
            try {
                Desktop.getDesktop().browse(new URI(YouTube));
            } catch (IOException | URISyntaxException e) {
        }
    } else {
            try {
                Desktop.getDesktop().browse(new URI(Twitter));
            } catch (IOException | URISyntaxException e) { }
    }

            try {
            Desktop.getDesktop().browse(new URI(FaceBook));
            } catch (IOException | URISyntaxException e) {}

    }
}

1 个答案:

答案 0 :(得分:2)

  1. 你需要一些其他if(....)`块。
  2. 例如,

    if (selectedValue.toString().equals(possibleValues[2])) {
      //...
    } else if (selectedValue.toString().equals(possibleValues[1])) {
      //...
    } else if (selectedValue.toString().equals(possibleValues[0])) {
      // ...
    }
    

    这将阻止您不想运行的代码块运行。

  3. 你需要没有空的拦截块,这样就会有危险和疯狂。
  4. 您需要更好地格式化代码,以便其他人(我们!)可以阅读和理解它而不必费力。