Respuesta a: Cómo hacer un JPanel Transparente??

#9969

julio godoy
Participante

El siguiente codigo corre y hace lo que tu quiere. Agregue unas cositas en la clase de los JPanel como:
setOpaque(false);  // esto te hace transparente el JPanel

setLocation(0,0);
setSize(300,300);

Las dos ultimas es lo mismo que usar un setBounds(0,0,300,300)
Saludos.
Finalmente te dejo el codigo:

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

 

public class PrimeraConsulta {

public static void main(String[] args) {

 

// TODO Auto-generated method stub

 

Marco m = new Marco();

 

m.setVisible(true);

 

}

 

 

 

}

 

 

 

class Marco extends JFrame{

 

public Marco(){

 

setBounds(0,0,300,300);

 

setTitle(“Ejemplo”);

 

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 

 

 

Panel1 p1 = new Panel1();

 

Panel2 p2 = new Panel2();

 

 

 

add(p1);

 

add(p2);

 

}

 

}

 

 

 

class Panel1 extends JPanel{

 

public Panel1(){

setLocation(0,0);

setSize(300,300);

setLayout(null);

setOpaque(false);

JButton b1 = new JButton(“Boton1”);

 

b1.setBounds(0, 0, 80, 30);

 

add(b1);

 

}

 

}

 

 

 

class Panel2 extends JPanel{

 

public Panel2(){

setLocation(0,0);

setSize(300,300);

setLayout(null);

setOpaque(false);

JButton b2 = new JButton(“Boton1”);

 

b2.setBounds(150, 0, 80, 30);

 

add(b2);

 

}

 

}