【问题标题】:JOptionPane select option is not working [closed]JOptionPane 选择选项不起作用[关闭]
【发布时间】:2023-04-08 14:29:01
【问题描述】:

试图让它工作,这是我的 GUI 的最后一部分,不完全确定这一切是如何工作的:L 这是我的代码。 “youtube,facebook,twitter”部分是字符串调用顺便说一句。 基本上发生的事情是 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) 您已经描述了一个问题,但到目前为止还没有提出任何问题(更不用说具体的、可回答的问题了)。您的问题是什么? 2) 为了尽快获得更好的帮助,请发帖SSCCE

标签: java swing options


【解决方案1】:
  1. 你需要一些 `else if (....)` 块。

例如,

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

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

  • 你不需要有空的 catch 块,因为那样会带来危险和疯狂。
  • 您需要更好地格式化您的代码,以便其他人(我们!)可以轻松阅读和理解它。
  • 【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-19
      • 2020-05-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多