Question
Your application chooses the number to be guessed by selecting an integer at random in the range 1–1000. The application then displays the following in a label: I have a number between 1 and 1000. Can you guess my number?
Please enter your first guess.
A JTextField should be used to input the guess. As each guess is input, the background color should change to either red or blue. Red indicates that the user is getting “warmer,” and blue, “colder.” A JLabel should display either "Too High" or "Too Low" to help the user zero in. When the user gets the correct answer, "Correct!" should be displayed, and the JTextField used for input should be changed to be uneditable. A JButton should be provided to allow the user to play the game again.When the JButton is clicked, a new random number should be generated and the input JTextField changed to be editable.
Solution Preview
This material may consist of step-by-step explanations on how to solve a problem or examples of proper writing, including the use of citations, references, bibliographies, and formatting. This material is made available for the sole purpose of studying and learning - misuse is strictly forbidden.
public class GuessTheNumberGame extends JFrame{private JButton tryOn;
private JButton reset;
private JTextField input;
private JLabel label;
private JLabel result;
private int guessedNumber;
private Random rand;
private int state;
public GuessTheNumberGame() throws HeadlessException {
super("Guess The Number Game");
// set layout
setLayout(new BorderLayout(5,5));
// init attributes
tryOn = new JButton("Try");
reset = new JButton("Reset");
input = new JTextField(20);
input.setFont(new Font("Arials", Font.ROMAN_BASELINE, 18));
rand = new Random();
// guess first
guessedNumber = Math.abs(rand.nextInt() % 1000) + 1;...