Как использовать JDialog для получения ввода

1

В SpaceInvadersApp.gameEnded() (показано ниже), как я могу использовать JOptionPane.showInputDialog(), чтобы отобразить диалог, следующий за диалоговым окном начального игрового сообщения, для пользователей, выигравших игру со счетом больше нуля (метод isGameWon проверяет это), Новое диалоговое окно должно информировать пользователя о том, что они достигли высокого балла и запросят имя для таблицы с высокими баллами.

 public void gameEnded() {
    String message;
    if (game.isGameWon()) {
        message = "You defeated the alien menace!  Congratulations!\n\n"
                + "Your score was " + game.getScore();
    } else {
        message = "Oh no! The aliens have defeated you.";
    }

    JOptionPane.showMessageDialog(this,
            message, "Game Over",
            JOptionPane.INFORMATION_MESSAGE);

    menuItemGamePause.setEnabled(false);
}
  • 1
    Кажется, у вас есть ответ в первом предложении. Ваш код использует showMessage , а не showInput . Последний возвращает String
  • 0
    Я знаю JOptionPane.showInputDialog (), но кто-то может показать мне, как получить ввод, такой как имя в всплывающем окне, которое появляется после всплывающего окна выше?
Показать ещё 2 комментария
Теги:
swing
jdialog

1 ответ

3
Лучший ответ

Начнем с изучения способов создания диалоговых окон.

Но в принципе, вы могли бы сделать что-то вроде...

if (game.isGameWon()) {
    message = "You defeated the alien menace!  Congratulations!\n\n"
            + "Your score was " + game.getScore();
    String name = JOptionPane.showInputDialog(this, message, "Game Over", JOptionPane.INFORMATION_MESSAGE)
    if (name != null) {
        // Save name
    }
} else {
    message = "Oh no! The aliens have defeated you.";
    JOptionPane.showMessageDialog(this,
            message, "Game Over",
            JOptionPane.INFORMATION_MESSAGE);
}
  • 0
    Спасибо, это то, что я искал. но что вы подразумеваете под JOption во второй строке?
  • 0
    Опечатка .......: P
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню