title: Overlapping ImageIcon/background image of JFrame with JButtons and ImageIcons
body: <p>I'm making a small networking game test, and I am having trouble figuring out how to format the start up page. I do have some code I threw together really quick, but basically I have an ImageIcon which is this <a href="http://gyazo.com/99aa963a7bc9e73fc6b10ccacc623636" rel="nofollow">background</a>. </p>
  
  <p>I want to be able to overlay buttons on images on top of the ImageIcon, but whenever I add something, obviously is just goes on top or below the image. <a href="http://gyazo.com/9a19dc7e4396290ba712c3a0efbd5b26" rel="nofollow">Here</a> is a picture I made really quick of what I want the final startup screen to look like. The singleplayer, multiplayer, and highscores are all JButtons, and the two robots in the corner are images.</p>
  
  <p>So if it possible to display a background image, and then put JButtons and images over it, it would be very much help! Thanks </p>
  
  <p>Here is the code i've currently finished, it's not much at all and needs much revision, but the buttons don't direct anywhere yet, the server just automatically starts the game which I will need to fix as well. 
  EDIT: If anybody also knows how to style the JButtons the way I mentioned in the links above, that would be very helpful</p>
  
  <pre><code>import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  
  
  public class startup implements ActionListener {
    //create array of string that stores connections on index(connection - 1)
    //ask user name while waiting
    JTextField field;
    private String name;  
  
    JTextField nameI;
  
    JButton submit;
  //STYLE THESE BUTTONS
  //  JButton singleplayer;
  //  JButton multilayer;
  //  JButton highscores;
  
    JFrame frame; 
    Game g;
  
    public startup(Game a) {
     g = a;
      //start();  
      name = "";
      frame = new JFrame("start screen");
      frame.setSize(500, 590);
  
      JLabel name = new JLabel("Type your character name here: ");
      JLabel bg = new JLabel(new ImageIcon("Startup.png"));
  
      submit = new JButton("submit");
  
      nameI = new JTextField(20);
  
      frame.add(name);    
      frame.add(nameI);
      frame.add(submit);
      frame.add(bg);
  
      frame.setLayout(new FlowLayout());
  
      submit.addActionListener(this);
  
      frame.setVisible(true);
  
  
  
    }
  
  
  
    public void run() {
  
  
    }
  
    public void actionPerformed(ActionEvent e)
    {
      name = nameI.getText(); 
      g.sendName();
  
    }
  
    public String getName() {
  
        return "name:" + name;
  
    }
      public void exit() {
  
        frame.setVisible(false);
  
      }
    }
  </code></pre>