title: Java: Problem using setText() method with Button
body: <p>I'm new to java and I'm trying to swap out the text on a Button I've created. The code for my main class is as follows:</p>
  
  <pre><code>import java.applet.*;
  import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  import java.lang.*;
  
  public class TeamProject extends Applet implements ActionListener, MouseListener
  {
  char[][] charValues = new char[10][10];
  Table aTable;
  boolean allowUserInput = false;
  Button BtnStart;
  Button randomChangeBtn;
  boolean guessMode;
  private AudioClip[] sounds = new AudioClip[5];
  private int counter = 0;
  //JSObject jso;
  
  public void init()
  {
          //setup buttons
      BtnStart = new Button("add row/column");
      BtnStart.addActionListener((ActionListener)this);   //cast
      randomChangeBtn = new Button("change one value");
      randomChangeBtn.addActionListener((ActionListener)this);
  
              //add button
      this.add(BtnStart);
  
      //add image to Image objects
      Image imgO = getImage(getCodeBase(), "images/not.gif");
      Image imgX= getImage(getCodeBase(), "images/cross.gif");
  
              //setup table
      aTable = new Table(100, 100, 75, 55, 5, 5, imgX, imgO);
  
      //setBackground(Color.LIGHT_GRAY);
      super.resize(700, 700);
  
              //add mouse listener
      addMouseListener(this);
  
      //initially guessMode will be false
      guessMode = false;
  
              //to talk to javascript
      //jso = JSObject.getWindow(this);
  
      sounds[0] = getAudioClip (getCodeBase(), "images/buzzthruloud.wav");
      sounds[1] = getAudioClip (getCodeBase(), "images/inconceivable4.wav");
      sounds[2] = getAudioClip (getCodeBase(), "images/foghorn.wav");
      sounds[3] = getAudioClip (getCodeBase(), "images/waiting.wav");
      sounds[4] = getAudioClip (getCodeBase(), "images/whistldn.wav");
  }
  
    public void paint(Graphics g)
    {
  g.setColor(Color.black);
  aTable.draw(g);
    }
  
    //Mouse listener methods
    public void mousePressed (MouseEvent e)
    {
      if(!guessMode){
    if ((allowUserInput)){
      aTable.swapSquareValue(e.getX(), e.getY());
      repaint();
    }
      }
      else{
        System.out.println("guessed row = " + e.getY() + " guessed col = " + e.getX());
        if(aTable.checkGuess(e.getX(), e.getY())){
          int n = JOptionPane.showConfirmDialog(null, "Excellent!! Would you like to progress to next level",
  
                                           "Correct!!!", JOptionPane.YES_NO_OPTION);
  
      if (n == JOpionPane.YES_OPTION) {
  
  
                 }
   else{
  
      JOptionPane.showMessageDialog(null, "Nope", "alert", JOptionPane.INFORMATION_MESSAGE);
  
      sounds[counter].play();
  
    }
  
  
  
    //repaint();
  
  }
  
  
  
    }
  
  
  
    public void mouseClicked (MouseEvent e) {}
  
    public void mouseEntered (MouseEvent e) {}
  
    public void mouseReleased (MouseEvent e) {}
  
    public void mouseExited (MouseEvent e) {}
  
  
  
    //Button action listener
  
  public void actionPerformed(ActionEvent e)
  
  {
  
      if (e.getSource() == BtnStart) {
  
        aTable.addRow();
  
        aTable.addColumn();
  
        BtnStart.setText("Roseindia.net");
  
        //this.remove(BtnStart);
  
        //this.add(randomChangeBtn);
  
        super.resize(700, 700);
  
        repaint();
  
  }
  
  else if (e.getSource() == randomChangeBtn) {
  
    aTable.randomChangeFunc();
  
    repaint();
  
    guessMode = true;
  
  }
  
  
  
      allowUserInput = true;
  
      System.out.println(aTable.toString());
  
  }
  
  
  
  }
  </code></pre>
  
  <p>I'm trying to change to text in my actionPerformed(ActionEvent e) method. Like I said, I'm new, so please be gentle. Thanks :)</p>