Java中如何在背景图片上添加组件
importjavax.swing.*;publicclassISextendsJFrame{IS(){JPanelp=newJPanel();JLabell=newJL...
import javax.swing.*;
public class IS extends JFrame {
IS(){
JPanel p=new JPanel();
JLabel l=new JLabel();
Icon icon=new ImageIcon("D:\\a.jpg"); //在此直接创建对象
l.setIcon(icon);
l.setBounds(0, 0, icon.getIconWidth(),icon.getIconHeight());
p.add(l,new Integer(Integer.MIN_VALUE));
getContentPane().add(p);
pack(); //窗口适应组件大小
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //用来关闭窗口的
setVisible(true);
}
public static void main(String[] a){
new IS();
}
}
如何在上诉代码的背景上添加按钮,而不出现遮挡的情况,按钮一定要在背景图片的上面 展开
public class IS extends JFrame {
IS(){
JPanel p=new JPanel();
JLabel l=new JLabel();
Icon icon=new ImageIcon("D:\\a.jpg"); //在此直接创建对象
l.setIcon(icon);
l.setBounds(0, 0, icon.getIconWidth(),icon.getIconHeight());
p.add(l,new Integer(Integer.MIN_VALUE));
getContentPane().add(p);
pack(); //窗口适应组件大小
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //用来关闭窗口的
setVisible(true);
}
public static void main(String[] a){
new IS();
}
}
如何在上诉代码的背景上添加按钮,而不出现遮挡的情况,按钮一定要在背景图片的上面 展开
2个回答
展开全部
你这只是添加图片,背景图片是用类Graphics实现的~你的代码写法错了,不能直接把图片拿过来用。。。
我简单的写了一个,你试试
public class Test2 extends JFrame{
Image image = Toolkit.getDefaultToolkit().getImage("D:\\a.jpg");
Test2(){
repaint();
JPanel p=new JPanel();
JButton jb = new JButton("确定");
p.add(jb);
add(p);
setSize(new Dimension(300,400));
setVisible(true);
}
/**
* 绘制背景图片
*/
public void paint(Graphics g){
g.drawImage(image,0,0,this);
}
public static void main(String[] a){
new Test2();
}
}
我简单的写了一个,你试试
public class Test2 extends JFrame{
Image image = Toolkit.getDefaultToolkit().getImage("D:\\a.jpg");
Test2(){
repaint();
JPanel p=new JPanel();
JButton jb = new JButton("确定");
p.add(jb);
add(p);
setSize(new Dimension(300,400));
setVisible(true);
}
/**
* 绘制背景图片
*/
public void paint(Graphics g){
g.drawImage(image,0,0,this);
}
public static void main(String[] a){
new Test2();
}
}
追问
我试了一下你先的方法,也不是太好,按钮显示不出来,到底怎么添加背景图片呢
追答
就这么写,按钮不出来,是因为我重绘的方法没写好,你改下,当时匆忙随便写的,
你鼠标放到中间的时候按钮就显示出来了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询