getContentPane()

Qua a função desse método ?

frame.getContentPane().add(botao1);

Da uma olhada aqui:

http://java.sun.com/j2se/1.4.2/docs/api/index.html

[quote=proazevedo]frame.getContentPane().add(botao1); [/quote]Resumidamente?
Adiciona o objeto botao1 ao objeto Container (responsável por gerenciar o leiaute) em frame.

Tratando de um JFrame o Container por default traz BorderLayout como leiaute. Entenda-se por leiaute modo como os objetos GUI ficarão dispostos pelo JFrame.

BorderLayout divide o JFrame em 5 regiões (NORTH, EAST, CENTER, WEST, SOUTH) onde cada uma comporta apenas um outro componente (JButton, JCheckBox, JTextField e etc).

Para adicionar o componente a uma destas regiões deve-se passá-lo ao método add() com uma das assinaturas a seguir:

getContentPane().add(botao1, BorderLayout.NORTH);
getContentPane().add(botao1, BorderLayout.EAST);
getContentPane().add(botao1, BorderLayout.CENTER);
getContentPane().add(botao1, BorderLayout.WEST);
getContentPane().add(botao1, BorderLayout.SOUTH);

Para extender as possibilidades de organização de seus componentes em um leiaute gerenciado como BorderLayout poderá fazer uso de JPanels adicionando-os a uma região de BorderLayout e anexando os componentes GUI ao JPanel através da chamada de add(Component) do próprio JPanel.

[code]
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
panel.add(botao1);
panel.add(botao2);

// Adiciona botao3 na região CENTER
getContentPane().add(botao3);

getContentPane().add(panel, BorderLayout.SOUTH);[/code]

Talvêz seja por isso q os Objetos Jlabel e JButton não esteja ficando na posição correta, parece que um está sobrepondo o outro :

public class Teste
  {
      public static void main(String args[])
      {
          JFrame frame = new JFrame("Primeiro Frame");
          JButton botao1 = new JButton();
          JLabel jLabel1 = new JLabel();
          jLabel1.setText("Nome do Funcionário:");
          botao1.setText("Botão");
          botao1.setSize(90, 40);
          jLabel1.setSize(300, 10);
          frame.setSize(500, 500);  
          frame.setLocation(1, 1);
          botao1.setLocation(10, 50);
          jLabel1.setLocation(10, 40);
          frame.getContentPane().add(jLabel1); 
          frame.getContentPane().add(botao1); 
          frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          // frame.pack();
          frame.setVisible(true);
      }
  }

Tem isso antes desse código citado acima:

import javax.swing.*; public class Teste { [/quote]

Não poderia ficar sem agradecer a sua esplicação asclows, Muito Obrigado… Valeu

Um Container de um JFrame tem como leiaute default BorderLayout, caso você adicione um componente sem especificar seu posicionamento ele será adicionado a BorderLayout.CENTER. O código abaixo adiciona dois componentes em BorderLayout.CENTER o que resulta na exibição do último adicionado, no caso botao2.

Container container = getContentPane(); container.add(botao1); container.add(botao2);