Home Foros Foro dudas Foro de Java Cómo hacer un JPanel Transparente?? Respuesta a: Cómo hacer un JPanel Transparente??

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

Home Foros Foro dudas Foro de Java Cómo hacer un JPanel Transparente?? Respuesta a: Cómo hacer un JPanel Transparente??

#11433

Lautaro
Participante

Buenos dias, se que ha pasado tiempo de este debate, pero tengo el mismo problema y no lo he podido solucionar tampoco agregando el setOpaque(false). Aqui dejo el codigo por si se me escapa algun detalle.

 

import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;

public class Ventanas_76 {

public static void main(String[] args) {
// TODO Auto-generated method stub

Ventana ventana=new Ventana();
ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class Ventana extends JFrame{
public Ventana(){
setTitle(“Ventana”);
setSize(500, 300);
setLocationRelativeTo(null);
setBackground(Color.green);
Lamina1 lamina1=new Lamina1();
add(lamina1);
Lamina2 lamina2=new Lamina2();
add(lamina2);
setVisible(true);
}
}
class Lamina1 extends JPanel{

public void paintComponent(Graphics g){
super.paintComponent(g);
Font miletra=new Font(“Courier”, Font.BOLD, 30);
g.setFont(miletra);
g.setColor(new Color(155, 120, 255));
g.drawString(“Prueba1”, 20, 20);
setOpaque(false);

}
}
class Lamina2 extends JPanel{

public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawString(“Prueba2”, 20, 60);
g.drawRect(100, 10, 80, 50);
g.fillRect(200, 10, 80, 50);
Graphics2D g2=(Graphics2D)g;
Rectangle2D rectangulo=new Rectangle2D.Double(10, 70, 80, 50);
float midash[]={10.0f};
BasicStroke milapiz=new BasicStroke(4, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 100, midash, 0);
g2.setPaint(Color.BLUE);
g2.setStroke(milapiz);
g2.draw(rectangulo);
Color micolor1=new Color(125, 188, 230, 150);
Color micolor2=new Color(0, 188, 0, 100);
g2.setPaint(micolor2);
g2.fill(rectangulo);
setOpaque(false);
}
}