I have a Jlabel called status that is empty. When I do status.setText() the first time it works normally but when I change it again it overlaps the first change instead of replacing it like it should. What is going on?
package panda.org;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.Math;
public class NumberGame implements ActionListener{
    JFrame frame;
    JLabel rules;
    JLabel rulesText;
    JLabel rulesText2;
    JLabel lets;
    JButton play;
    JButton exit;
    JPanel panel;
    Font myFont = new Font("Serif Plain", Font.BOLD, 15);
    NumberGame() {
        frame = new JFrame("NumberGame");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(600, 500);
        frame.setLocationRelativeTo(null);
        frame.setLayout(null);
        frame.setResizable(true);
        Image icon = Toolkit.getDefaultToolkit().getImage("C:\\Users\\Gaming MSI\\Pictures\\Saved Pictures\\download (1).png");
        frame.setIconImage(icon);
        rules = new JLabel("Rules: ");
        rules.setFont(myFont);
        rules.setBounds(50, 100, 100, 75);
        rulesText = new JLabel("We will pick a random number in the range of 1 -> 50.");
        rulesText.setBounds(100, 100, 315, 75);
        rulesText2 = new JLabel("Your job is to guess that number!");
        rulesText2.setBounds(100, 120, 315, 75);
        play = new JButton("Play");
        play.setBounds(150, 300, 100, 75);
        play.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                int failedAttempts = 0;
                JLabel label = new JLabel("Guess the number from 1 till 50");
                label.setFont(myFont);
                label.setBounds(150, 75, 315, 75);
                JLabel hints = new JLabel("");
                JTextField text = new JTextField();
                text.setBounds(250, 150, 100, 25);
                JButton check = new JButton("Check");
                check.setBounds(150, 150, 75, 25);
                double randomDouble = Math.random();
                randomDouble = randomDouble * 50 + 1;
                int randomInt = (int) randomDouble;
                double finalRandomDouble = randomDouble;
                check.addActionListener(new ActionListener() {
                    @Override
                    public void actionPerformed(ActionEvent e) {
                        System.out.println(randomInt);
                        String nb = text.getText();
                        int change = Integer.parseInt(nb);
                        JLabel status = new JLabel("");
                        status.setBounds(150, 160, 1000, 100);
                        frame.add(status);
                        if(randomInt == change) {
                            status.setText("You chose the correct number!");
                            status.setForeground(Color.green);
                        }
                        if(randomInt != change) {
                            status.setText("Wrong choice! Try again.");
                            status.setForeground(Color.red);
                        }
                    }
                });
                rules.setText("");
                rulesText.setText("");
                rulesText2.setText("");
                frame.add(hints);
                frame.add(label);
                frame.add(check);
                frame.add(text);
            }
        });
        exit = new JButton("Exit");
        exit.setBounds(350, 300, 100, 75);
        exit.addActionListener(new ActionListener()  {
            public void actionPerformed(ActionEvent e) {
                int result = JOptionPane.showConfirmDialog(frame,"Are you sure want to exit?", "Exit",
                        JOptionPane.YES_NO_OPTION,
                        JOptionPane.QUESTION_MESSAGE);
                if(result == JOptionPane.YES_OPTION){
                    System.exit(0);
                }else if (result == JOptionPane.NO_OPTION){
                }else {
                }
            }
        });
        frame.add(play);
        frame.add(exit);
        frame.add(rules);
        frame.add(rulesText);
        frame.add(rulesText2);
        frame.setVisible(true);
    }
    public static void main(String[] args) {
        NumberGame number = new NumberGame();
    }
    @Override
    public void actionPerformed(ActionEvent e) {
    }
}
Someone asked for more code so this is all of my code! I hope this helps :D
The problem is in these lines
                        if(randomInt == change) {
                            status.setText("You chose the correct number!");
                            status.setForeground(Color.green);
                        }
                        if(randomInt != change) {
                            status.setText("Wrong choice! Try again.");
                            status.setForeground(Color.red);
                        }
                    }
This is how the result appears:

 
     
    