Добавление ввода из JOptionPane.showInputDialog в JTextField - PullRequest
0 голосов
/ 04 мая 2020

В основном я хочу, чтобы в диалоговом окне отображалось, где player1 предлагается ввести его имя, а другое диалоговое окно делает то же самое для player2. Я хочу, чтобы имена, введенные player1 и player2, были установлены в jTextField1 и jTextField2 соответственно.

Проблема в том, что функция JOptionPane.showInputDialog() сохраняет входные данные только в переменной * * * * *. Поэтому, когда я сохраняю ввод в переменной stati c и передаю его функции setText(), элементы управления JTextField также должны быть сделаны stati c. И если элементы управления текстового поля имеют статус c, то, очевидно, он не отображает этот текст.

public class Game extends javax.swing.JFrame
{
    private static javax.swing.JTextField jTextField1;
    private static javax.swing.JTextField jTextField2;

    public static void main(String args[])
    {
        java.awt.EventQueue.invokeLater(new Runnable()
        {
            public void run()
            {
                String name1 = JOptionPane.showInputDialog("Enter player 1 name: ");
                String name2 = JOptionPane.showInputDialog("Enter player 2 name: ");
                jTextField1.setText(name1);
                jTextField2.setText(name2);
                new Game().setVisible(true);    
            }
        });
    }
}

Этот код работает отлично, но, как я объяснил, имена player1 и player2, которые ввод пользователя не отображается в текстовых полях. Я много об этом искал, но ничего не могу найти.

...