Если заявление не обновляется - PullRequest
0 голосов
/ 05 апреля 2019

Я учу Java, и я застрял.Я использую JTextField в качестве userInput.После того, как пользователь нажимает Enter, я хочу, чтобы мое заявление if напечатать для меня «текст изменился».Возможно, я хочу установить 2 получателя.Сначала для моего логического значения, а во-вторых, строка, которая содержит ответ пользователя.

import java.awt.*;  
import java.awt.event.*;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class setTextField{
    boolean gotChanged = false;
    String userInput;
    public void setTextField()
    {        
        Font fieldFont = new Font("Arial", Font.PLAIN, 20);
        JTextField test;
        test = new JTextField("Input here...");
        test.setBounds(widthPosition, 145, 220, 25);
        test.setFont(fieldFont);
        test.setBackground(Color.WHITE);
        test.setForeground(Color.GRAY.brighter());
        test.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                gotChanged = true;
                userInput = test.getText();
            }
        });
        if(gotChanged)
        {
            System.out.println("Your answer is " + test);
        }
    }
    public boolean getInfo()
    {
        return gotChanged;
    }    
    public String getInput()
    {
        return userInput;
    }
}

1 Ответ

2 голосов
/ 05 апреля 2019

Поместите Sysout в метод actionPerformed.У вас не реализована логика для повторной проверки if(gotChanged).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...