JAVA之设置背景图片的几种方法



第一种方法,通过JLabel来装载图片。

创建一个ImageIcon对象,来获取背景图片。

ImageIcon img = new ImageIcon("image/img1.png");

创建一个JLabel对象,将图片img载入到JLabel对象中。

JLabel jl_bg = new JLabel(img); //背景

然后,设置jl_bg的位置和大小。

this.jl_bg.setBounds(0, 0, 600, 400); //设置位置和大小,先setLayout(null)一下。

将JLabel对象jl_bg放入分层面板中。

this.getLayeredPane().add(jl_bg, new Integer(Integer.MIN_VALUE));
((JPanel)this.getContentPane()).setOpaque(false); //设置透明

如上代码中,getLayeredPane()获取的是分层面板,将背景图片放置最底层,就可以作为背景图片了。我们知道,在JFrame中还有一个ContentPane容器,如此,放置最底层就会被ContentPane所遮挡,所以,需要添加第二行代码,将此设置为透明。注意,需要对其进行强制转换。

第二种方法,通过paint绘制背景图片。

这种方法也是比较常用的方法,首先需要创建一个BufferedImage对象,并初始化为null。

BufferedImage bg = null;

然后就是加载背景图片。

try {
	bg = ImageIO.read(new File("image/img1.png"));
}catch(Exception e) {
	e.printStackTrace();
}

最后,在重写paint方法,通过drawimage方法,将此背景图片绘制即可。

public void paint(Graphics g) {
	g.drawImage(bg, 0, 0, null);
}

这里最好使用双缓冲,不然可能会有闪屏神马的问题。关于双缓冲,在前面的博文里写过。

THE END~

时间: 2024-08-29 05:51:05

JAVA之设置背景图片的几种方法的相关文章

设置背景图片的两种方式,并解决手机端背景图片高度自适应问题

1 设置背景图片的两种方式: 方式一: <img src="../img/10.jpg"/ class="back" id="Background"> .back{ position: fixed; width: 100%; height: 100%; display: block; z-index: -100; } 方式二:div class="body" id="Background">

DISCUZ论坛添加页头及页尾背景图片的几种方法

先给大家分享页头添加背景图片的两种方法: 1. 第一种效果,是给discuz的整体框架添加背景图片,见图示: 添加方法如下:找到你现在使用模板common文件下的header.html文件,在<head></head>部分添加以下代码: <style>body { background-image:url(你的背景图片地址,如http://abc.com/imgs/bg.jpg); background-repeat:no-repeat; background-posi

swing-窗体添加背景图片的2种方法

在美化程序时,常常需要在窗体上添加背景图片.通过搜索和测试,发现了2种有效方式.下面分别介绍.1.利用JLabel加载图片利用JLabel自带的setIcon(Icon icon)加载icon,并设置JLabel对象的位置和大小使其完全覆盖窗体.这是一个很取巧的办法,代码非常简单,如下所示. JLabel lbBg = new JLabel(imageIcon); lbBg.setBounds(0, 0, frameSize.width, frameSize.height); this.getC

QT中给各控件增加背景图片的几种方法

1. 给QPushButton 增加背景图片:背景图片可根据Button大小自由缩放. void setButtonBackImage(QPushButton *button,QString image,int sizeW, int sizeH) { //163,163为原始分辨率,这里稍做了调整. QPixmap pixmap(image); QPixmap fitpixmap=pixmap.scaled(163,163).scaled(sizeW, sizeH, Qt::IgnoreAspe

两种 设置 背景图片方法

两种设置背景图片方法 //    UIView *navigationbarTitleTupian =[[UIView alloc]initWithFrame:CGRectMake(0, 0, 40, 30)]; //    UIImageView *imageTitleTupian =[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"bg.png"]]; // //    [navigationbarTitleTupian

可设置背景图片的JPanel

package com.sot.he.upload; import java.awt.Graphics; import java.awt.Image; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JPanel; /** * 可设置背景图片的JPane

css网页中设置背景图片的方法详解

css网页中设置背景图片的方法详解 在css代码中设置背景图片的方法,包括背景图片.背景重复.背景固定.背景定位等 用css设置网页中的背景图片,主要有如下几个属性: 1,背景颜色 {background-color:数值}2,背景图片 {background-image: url(URL)|none}3,背景重复 {background-repeat:inherit|no-repeat|repeat|repeat-x|repeat-y}4,背景固定 {background-attachment

HTML学习笔记8——CSS设置背景图片

注意点:   background:blue: 与 background-color:blue: 不一样! 一.关于background设置:   1)background:blue:   2)background-image:url(图片名称): 当背景既有颜色,又有图片时,哪个在后面哪个就生效,如下例所示: 此处写了“新宋体”的这张图片作为本文涉及到的背景图片. 以图片为背景时,若图片小于页面大小,则图片会一直重复直到铺满为止: 字在后面时,字生效 1 <!DOCTYPE html> 2

UIView 设置背景图片

http://blog.csdn.net/qijianli/article/details/7777268 项目中,可能需要我们为某个视图设置背景图片,而API中UIView没有设置背景图片的方法,那么该如何实现呢? 第一种方法: 利用的UIView的设置背景颜色方法,用图片做图案颜色,然后传给背景颜色. UIColor *bgColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"bgImg.png"]; UIVie