给JFrame设置了一个背景图片
给JFrame设置了一个背景图片,在JPanel上添加了Panel,JscrollPane,JTable,JTree等组件,都设置成透明的以后,JscrollPane里的...
给JFrame设置了一个背景图片,在JPanel上添加了Panel,JscrollPane,JTable,JTree等组件,都设置成透明的以后,JscrollPane里的JTable和JTree却不能显示背景图片,怎样才能使JFrame里的图片完全显示出来呀?
展开
1个回答
展开全部
你在建立swing窗体的时候,java会自动生成一个类(Application)
这时候你需要把添加的图片写在JFrame类里,由于你要设置一个窗体,窗体肯定有属性(例如大小...),把窗体的属性写在程序的入口Application里.这就就能解决了.
public class Text extends JFrame{
ImageIcon img;
public Landing() {
img = new ImageIcon("图片名加后缀格式");
JPanel panel = new JPanel() {
public void paintComponent(Graphics g) {
g.drawImage(img.getImage(), 0, 0, null);
super.paintComponent(g);
}
};
panel.setOpaque(false);
setContentPane(panel);
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
把窗体的设置写在Application类里,这里是入口
Landing frame = new Landing();
frame.setBounds(,,,);
frame.setVisible(true);
这时候你需要把添加的图片写在JFrame类里,由于你要设置一个窗体,窗体肯定有属性(例如大小...),把窗体的属性写在程序的入口Application里.这就就能解决了.
public class Text extends JFrame{
ImageIcon img;
public Landing() {
img = new ImageIcon("图片名加后缀格式");
JPanel panel = new JPanel() {
public void paintComponent(Graphics g) {
g.drawImage(img.getImage(), 0, 0, null);
super.paintComponent(g);
}
};
panel.setOpaque(false);
setContentPane(panel);
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
把窗体的设置写在Application类里,这里是入口
Landing frame = new Landing();
frame.setBounds(,,,);
frame.setVisible(true);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询