重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Frame f = new Frame();
成都创新互联为客户提供专业的网站建设、做网站、程序、域名、空间一条龙服务,提供基于WEB的系统开发. 服务项目涵盖了网页设计、网站程序开发、WEB系统开发、微信二次开发、移动网站建设等网站方面业务。
f.setTitle("设置图片");
f.setSize(400, 300);
/*读取要显示的图片*/
final Image img = ImageIO.read(new File("D:/1.jpg"));
/*重写panel的绘制方法*/
Panel panel = new Panel(){
private static final long serialVersionUID = 1L;
@Override
public void paint(Graphics g) {
super.paint(g);
g.drawImage(img, 0, 0, 400, 300, null);
}
};
/*添加panel标签*/
f.add(panel);
/*添加关闭操作监听*/
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
/*显示窗体*/
f.setVisible(true);
可以通过重写标签的绘制方法来实现
在学习Swing 图形化界面的时候,会出现标签组件---JLabel,而在容器JFrame当中进行设置的时候,可以添加图片,此图片可以充当标签,那么我们还需要一个接口,那就是Icon接口,专门来接收图片的!
现在通过步骤来解决如何将图片添加到标签组件中!
第一步: 创建JFrame容器,并设置标题
第二步: 定义字符串类型的图片路径,目的为ImageIcon类传参
第三步:实例化Icon接口对象,通过子类ImageIcon来完成。
第四步:创建JLabel对象,传入Icon对象和设置在容器当中的位置。
第五步: 设置容器的大小、背景颜色、并显示出来!
具体代码如下:
public class JLabelDemo {
public static void main(String[] args) {
//实例化JFrame对象,并设置标题
JFrame f = new JFrame("我的窗体") ;
//定义图片路径
String picPath = "d:" + File.separator + "haha.gif" ;
//实例化Icon对象,并传入图片路径
Icon icon = new ImageIcon(picPath) ;
// 实例化标签对象,传入Icon对象,并设定位置。
JLabel lab = new JLabel(icon,JLabel.CENTER) ;
lab.setBackground(Color.YELLOW) ;//设置窗体的背景颜色
f.add(lab) ; //将组件件入到JFrame面板之中
f.setSize(600,360) ; //设置窗体的大小;
f.setLocation(300,200) ; //设置窗体出现的位置
f.setVisible(true) ; //让窗体显示出来。
}
}
ImageIcon image = new ImageIcon("images/bg5.png");
JLabel la3 = new JLabel(image);
// System.out.println(this.getWidth()+ "gg");
la3.setBounds(0, 0, 881,683);//添加图片,设置图片大小为窗口的大小。
this.getLayeredPane().add(la3,new Integer(Integer.MIN_VALUE)); //将JLable加入到面板容器的最高层
getContentPane().add(la3);
这个是我的代码,添加背景图片的
估计关键在getContentPane().add(la3);这一句上,你看看是不是没添加到面板
或者setBounds是不是设置的 长宽是不是 0
this.getLayeredPane().add(la3,new Integer(Integer.MIN_VALUE));
这句话可以没有的,这句话作用是设置背景图片
可以利用标签组件来设置。
具体方法如下:
利用标签组件来设置,具体代码如下:
JPanelpnlMain=new JPanel(); //创建面板pnlMain。
getContentPane().add(pnlMain); //将pnlMain设置为主面板。
Iconi=new ImageIcon("背景.jpg"); /*用源图片“背景.jpg”构造一个ImageIcon对象i,需要注意如果图片的路径使用的是相对路径,则图片文件必须放在类文件所在文件夹或项目的根文件夹中,否则图片的路径必须用绝对路径。*/
JLabellblLogo = new JLabel(i); //用指定的图片构造标签对象lb
this.getLayeredPane().add(lb, new Integer(Integer.MIN_VALUE));
//把标签放在第二层JlayerPane上。
lb.setBounds(0, 0,ii.getIconWidth(),i.getIconHeight());
//设置标签的尺寸,即背景图象的大小。
getConentPane().setOpaque(false); /*把内容面板设置为透明,这样整个框架的背景就不再是内容面板的背景色,而是第二层中标签的图像。*/
pnlMain.add(lb); //将标签添加到主面板pnlMain中。