Gerenciador de Layout em java Swing. (Por favor me ajudem)

Ola meus amigos , Sou novo no GUJ e também no java , e gostaria de uma ajuda de vcs !!
Meu problema é o seguinte, fiz uma tela usando Swing, é a tela inicial do programa, a resolução do
meu monitor é 1024 x 768 , em minha maquina , a tela abre beleza , configurada da forma que foi
programada, porém , em outra máquina , com uma resolução superior a essa , o programa abre desconfigurado,
ou seja , os textos e caixa de texto e também os botões abre em canto diferente onde deveria! Creio eu que não estou
sabendo usar um gerenciador de Layout.
Abaixo segue o código.

[code]

package PowerDataSystem.View;

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

public class TelaInicial extends JFrame {

public JLabel imagemFundo;
public JPanel painel = new JPanel();
public JLabel usuario;
public JLabel senha;
public JTextField usuarioTextF;
public JTextField loginTextF;
public JButton botaoSair;
public JButton botaoEntrar;
public JPasswordField caixaSenha;

public TelaInicial (){
	super("Power Data System");
	this.setLayout(new BorderLayout());
	Container tela = getContentPane();
			
	
	botaoSair = new JButton("SAIR");
	botaoEntrar = new JButton("OK");
	
	caixaSenha = new JPasswordField(6);
	usuarioTextF = new JTextField();
	
	senha = new JLabel("SENHA");
	usuario = new JLabel("USUARIO");
	
	tela.add(usuarioTextF);
	tela.add(caixaSenha);
	tela.add(botaoSair);
	tela.add(botaoEntrar);
	tela.add(senha);
	tela.add(usuario);
	
	usuarioTextF.setBounds(495, 350, 150, 20);
	caixaSenha.setBounds(495, 380, 150, 20);
	botaoSair.setBounds(575, 410, 70, 20);
	botaoEntrar.setBounds(495, 410, 70, 20);
	senha.setBounds(450, 379,50 ,20);
    usuario.setBounds(436,350, 60, 20);
    
	//*********** Evento do botão sair *******************************
	
	botaoSair.addActionListener(new ActionListener() {  
		      public void actionPerformed(ActionEvent e) {  
		         System.exit(0);  
		       }  
		    });  
	//****************************************************************
			
	painel.setOpaque(false);
	//tela.setLayout(new BorderLayout());
	ImageIcon fundo = new ImageIcon("imagem1.JPG");
	imagemFundo = new JLabel(fundo);
    tela.add(imagemFundo,BorderLayout.CENTER);
	setSize(800,600);
	setVisible(true);
	setExtendedState(MAXIMIZED_BOTH);
		
}

public static void main (String [] args){
	TelaInicial tela1 = new TelaInicial();
	tela1.setDefaultCloseOperation(EXIT_ON_CLOSE);
	
}

}[/code]

Desde de já muiiiito obrigado!

Realmente, você não faz um uso nem um pouco correto dos gerenciadores de layout. Não dá nem para simplesmente sugerir uma correção, pois você não chegou nem perto de acertar. Você sequer leu como eles funcionam?

Em primeiro lugar, esqueça o comando setBounds. Você não vai usa-lo, nunca.

Em segundo, procure se informar sobre o funcionamento do BorderLayout, FlowLayout e, principalmente, GridbagLayout.
http://download.oracle.com/javase/tutorial/uiswing/layout/visual.html
http://download.oracle.com/javase/tutorial/uiswing/layout/using.html

Se você for mesmo montar tela no braço, pode ser uma ótima usar um gerenciador de layout externo ao java, como o MigLayout:
www.miglayout.com/QuickStart.pdf

Entenda como posicionar seus componentes de forma relativa, e não absoluta (com coordenadas precisas). Isso não só vai te poupar muito trabalho, como também deixará sua tela resistente a mudanças de resolução e sistema operacional. Além disso, você ganha de brinde a possibilidade de alterar o tamanho da janela, pois seus componentes se ajustarão sozinhos.

Ok !! vou estudar mais sobre o assunto , e ve se consigo, arrumar esse emaranhado de linhas ! :smiley:
obrigadoo! Se mais algume tiver algo a dizer agradeço , e puder me ajudar no código, mais não irei descarta r
o concelho do amigo , e le mais sobre o assunto!
obrigado

Em primeiro lugar, parabéns.
Se você é iniciante na linguagem e fez o código, não está utilizando o netbeans para gerar o código da visão, o que é extremamente raro para iniciantes (eu usava, e fiquei mal acostumado por muito tempo), e que vai te poupar de muita agonia…

Segundo, sugiro também o MigLayout.
Como usar ele, você pode encontrar aqui.

Boa sorte e bons estudos.

Quando comecei a programar, também montava as janelas pelo código e usava o bendito setBounds…
Em relação aos gerenciadores de Layouts, sugiro dar uma estudada primeiro nos que são oferecidos pela API… e depois sim, buscar outros de terceiros.
Como você esta iniciando agora, é muito melhor não se apegar somente com um recurso de um gerenciador de layout especifico… e sim, buscar a entender o conceito geral da coisa, depois com certeza podera adotar um gerenciador especifico que goste de usar…

Para saber mais sobre Gerenciadores de Layouts veja esses artigos… claro além de dar uma olhada nos excelente conteúdo do Tutorial Java…
http://devsv.wordpress.com/category/java/java-desktop/

Especialmente esse…
http://devsv.wordpress.com/2010/12/07/layout-manager-i-null/

Não acho que da para sugerir melhoras em relação ao seu código agora, para isso seria necessário entender o uso dos gerenciadores… depois podera facilmente por si só arrumar a seu gosto…

Fuja do Null Layout…

Procure usar sempre a skin do windows eu usava o metal mas ele distorce as telas e você pensa que o erro está no código.

Valew d ++++ galera pela a força!!! Obrigado mesmo a cada um que respondeu! Ja me clareou e muito as idéias !!!
:smiley: Abraços s Todos!!!