Formulário transparente

Boa noite, alguém pode me dizer como deixar um formulário transparente, assim, quando adicionar uma imagem PNG só apareça a imagem e os objetos como JTextFields ,JLabels e JButton.
Encontrei alguns sites que falavam sobre opacidade, não é isso, é a cor do background mesmo, obrigada

Você deve desligar as decorações do formulário e chamar seu método setOpaque, passando um número entre 0 e 1, onde 1 significa 100% opaco e 0 100% transparente.

Exemplo:

seuFrame.setDecorated(false); seuFrame.setOpacity(0.3f);

Use 0 para totalmente transparente.

o que vc quer é deixar a imagem como plano de fundo?mostrando os componentes sobre ela?

Sim, vamos supor que a imagem seja redonda, uma png, transparente, então apenas a imagem apareceria e não o frame atras

hun…
vc pode deixar a imagem como plano de fundo assim:

[code]public GujTeste() {

	JPanel painel = new JPanel();
	painel.setOpaque(false);
	setGlassPane(painel);
	getGlassPane().setVisible(true);
	
	JTextField txt=new JTextField(15);
	painel.add(txt);
	Container c = getContentPane();
	c.setLayout(new BorderLayout());
	
	ImageIcon img = new ImageIcon("fundo.gif");
	
	JLabel imagem = new JLabel(img);
	c.add(imagem, BorderLayout.CENTER);

	this.setSize(310, 240);
	this.setResizable(false);
	this.setLocationRelativeTo(null);
	this.setVisible(true);

}[/code]

existe uma biblioteca chamada AWTUtilities que deixa o frame transparente…porém os componentes tbm ficam.
o que vc pode fazer é da um setUndecorated(true); no seu frame deixando a impressão que não ha frame.
ja fiz isso veja o resultado:

Hum… eu vou seguir suas dicas, muito obrigada

[quote=ViniGodoy]Você deve desligar as decorações do formulário e chamar seu método setOpaque, passando um número entre 0 e 1, onde 1 significa 100% opaco e 0 100% transparente.

Exemplo:

seuFrame.setDecorated(false); seuFrame.setOpacity(0.3f);

Use 0 para totalmente transparente.[/quote]

Tentei a tua dica , usando o

a linha não é reconhecida porque não acha esse metodo na Classe ! e quando tento correr o programa so com a linha que define a opacidade ele lança uma Excepção justamente porque o Decoreted esta em [color=blue]true[/color]

[quote=ruben_m][quote=ViniGodoy]Você deve desligar as decorações do formulário e chamar seu método setOpaque, passando um número entre 0 e 1, onde 1 significa 100% opaco e 0 100% transparente.

Exemplo:

seuFrame.setDecorated(false); seuFrame.setOpacity(0.3f);

Use 0 para totalmente transparente.[/quote]

Tentei a tua dica , usando o

a linha não é reconhecida porque não acha esse metodo na Classe ! e quando tento correr o programa so com a linha que define a opacidade ele lança uma Excepção justamente porque a opacidade esta em [color=blue]true[/color][/quote]

que jdk vc usa?
não tenho certeza mas acho que isso ae é do java 7.
vini deve confirmar pra vc…
flw

[quote]que jdk vc usa?
não tenho certeza mas acho que isso ae é do java 7.
vini deve confirmar pra vc…
flw [/quote]

estou a usar o JDK 7 para 64 bits