Olá!
Sempre consigo resolver minhas dúvidas apenas pesquisando no forum.
mas essa ta dificil de achar.
há alguma maneira de deixar um JFrame transparente, sem deixar seus componentes(Button,Label,TextField…)transparentes?
estou usando a API com.sun.awt.AWTUtilities.
exemplo:
import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import com.sun.awt.AWTUtilities;
public class Transparente extends JFrame {
public Transparente() {
JPanel painel = new JPanel();
painel.setLayout(new FlowLayout());
JLabel campo = new JLabel("Duvida!!");
JTextField txtCampo = new JTextField(15);
painel.add(campo);
painel.add(txtCampo);
this.add(painel);
this.setSize(800, 600);
this.setResizable(false);
this.setVisible(true);
AWTUtilities.setWindowOpacity(this, 0.75f);
}
public static void main(String[] args) {
new Transparente().setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Cara, acredito que você já deve ter resolvido essa parada, devido a data da pergunta, mas… veja esse link aqui! :idea:
Não rodei nem testei o código mas acredito que colocando a criação da imagem de fundo em um método a parte e chamando ele quando o MouseListener/MouseMotionListener do seu JFrame receber um evento, vai obter o resultado desejado.