JAVA 使用玻璃面板无法透明显示
使用玻璃面板(GlassPane)设置不透明以后,还是会把背景颜色盖住,是什么原因?怎样才能正常透明?源代码如下……请高手帮忙提下原因……importjava.awt.*...
使用玻璃面板(GlassPane)设置不透明以后,还是会把背景颜色盖住,是什么原因?怎样才能正常透明?
源代码如下……请高手帮忙提下原因……
import java.awt.*;
import javax.swing.*;
public class Glass02 extends JFrame
{
public Glass02()
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame f = new JFrame();
f.setVisible(true);
f.setSize(1024, 768);
JPanel P = new JPanel();
f.add(P,BorderLayout.CENTER);
P.setBackground(Color.RED);
f.repaint();
JComponent P1 = (JComponent)f.getGlassPane();
JButton B = new JButton();
P1.setVisible(true);
P1.setOpaque(false);
B.setSize(400,400);
P1.add(B);
f.add(P1,BorderLayout.CENTER);
f.repaint();
}
});
}
public static void main(String[] args)
{
new Glass02();
}
} 展开
源代码如下……请高手帮忙提下原因……
import java.awt.*;
import javax.swing.*;
public class Glass02 extends JFrame
{
public Glass02()
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame f = new JFrame();
f.setVisible(true);
f.setSize(1024, 768);
JPanel P = new JPanel();
f.add(P,BorderLayout.CENTER);
P.setBackground(Color.RED);
f.repaint();
JComponent P1 = (JComponent)f.getGlassPane();
JButton B = new JButton();
P1.setVisible(true);
P1.setOpaque(false);
B.setSize(400,400);
P1.add(B);
f.add(P1,BorderLayout.CENTER);
f.repaint();
}
});
}
public static void main(String[] args)
{
new Glass02();
}
} 展开
1个回答
2015-04-01
展开全部
JPanel panel1=new JPanel();
panel1.setOpaque(false);
这个setOpaque(false);应该可以帮助楼主了,你看拆罩灶是不是这个效果,如果要达到楼主你说的像酷狗显示歌词的效果,闷银文本必须要用文本框,不过文本框也有setOpaque();方法
JTextField textField =new JTextField();
textField.setOpaque(false);
就可以旅扮达到楼主你说的效果了
panel1.setOpaque(false);
这个setOpaque(false);应该可以帮助楼主了,你看拆罩灶是不是这个效果,如果要达到楼主你说的像酷狗显示歌词的效果,闷银文本必须要用文本框,不过文本框也有setOpaque();方法
JTextField textField =new JTextField();
textField.setOpaque(false);
就可以旅扮达到楼主你说的效果了
追问
我主要是想做一个透明的面板,盖在另一层面板上面,然后在透明面板上添加按钮,你这个方法只是单纯添加透明面板啊……好像不行……我需要覆盖效果……
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询