曹杨教学点? 北桥教学点? 学校总部? | 设为首页 | 加入收藏 | 官方微信
365棋牌新手卡怎么使用_365棋牌全民游戏_365棋牌游客服充值
打造“培训+就业”一站式服务品牌!
  • Python+AI工程师
  • Web前端工程师
  • Java软件开发工程师
banner1

首页>>学员天地

java中JFrame的背景色和背景图片的设置
编辑:eamol? 阅读:2089次? 发布:16-03-02

?

/*------------------------------------背景色的设置------------------------------------------*/

package com;

import java.awt.Color;

import javax.swing.JFrame;

public class JFrameBackGround extends JFrame {
?
?//设置背景色
? public void test()?
???? {?
?? //设置标题
??? this.setTitle("背景框架");
???? //设置框架长度和宽度
???????? this.setSize(400,300);
???????? //设置坐落位置
???????? this.setLocation(400,300);?
???????? //关闭按钮
???????? this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?
???????? //设置背景色
???????? this.setBackground(Color.blue);?
???????? this.getContentPane().setBackground(Color.red);?
???????? this.getContentPane().setVisible(false);//如果改为true那么就变成了红色。?
???????? this.setVisible(true);?
???? }
?
?
?public static void main(String[] args) {
??//实例化对象
??JFrameBackGround jfbg=new JFrameBackGround();
??//背景色
//??jfbg.test();
??

?}

}

?

/*----------------------------------------背景图片的设置-----------------------------------------*/

方法一:

package com;
import java.awt.*;
import javax.swing.*;
import java.awt.Container;

public class Test1 extends JFrame {

?public Test1() {
??this.setTitle("背景图设置");
??this.setSize(300, 200);
??this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
??// 这是背景图片
??ImageIcon img = new ImageIcon("images\\bg_pic.jpg");
??// 将背景图放在标签里。
??JLabel imgLabel = new JLabel(img);
??// 注意这里是关键,将背景标签添加到jfram的LayeredPane面板里。
??this.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));
??// 设置背景标签的位置
??imgLabel.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
??Container cp = this.getContentPane();
??cp.setLayout(new BorderLayout());
??// 创建按钮
??JButton but = new JButton("按钮");
??// 将按钮添加入窗口的内容面板
??cp.add(but, "North");
??// 注意这里,将内容面板设为透明。这样LayeredPane面板中的背景才能显示出来。
??((JPanel) cp).setOpaque(false);
??this.setSize(500, 300);
??this.setVisible(true);
?}

?public static void main(String[] args) {
???? new Test1();
?}

}

?

方法二:

package com;

import java.awt.Container;
import java.awt.Graphics;
import java.awt.Image;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test extends JFrame?
{?
??? //创建一个容器?
??? Container ct;?
??? //创建背景面板。?
??? BackgroundPanel bgp;?
?????
??? //创建一个按钮,用来证明我们的确是创建了背景图片,而不是一张图片。?
??? JButton jb;
???
??? public static void main(String[] args)?
??? {?
??????? new Test();?
??? }?
???
??? public Test()?
??? {?
??????? this.setSize(400,300);?
??????? this.setLocation(400,300);?
??????? this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?
??????? //不采用任何布局方式。?
??????? ct=this.getContentPane();?
??????? this.setLayout(null);?
?????????
??????? //在这里随便找一张照片既可以看到测试结果。?
??????? bgp=new BackgroundPanel((new ImageIcon("images\\bg_pic.jpg")).getImage());?
??????? bgp.setBounds(0,0,400,300);?
??????? ct.add(bgp);?
?????
??????? this.setVisible(true);?
??? }?
}?


class BackgroundPanel extends JPanel?
{?
??? Image im;?
??? public BackgroundPanel(Image im)?
??? {?
??????? this.im=im;?
??????? this.setOpaque(true);?
??? }?
??? //Draw the back ground.?
??? public void paintComponent(Graphics g)?
??? {?
??????? super.paintComponents(g);?
??????? g.drawImage(im,0,0,this.getWidth(),this.getHeight(),this);?
?????????
??? }?
}?

?

?



上一篇:?java中Frame框架关闭按钮和框架居中的设置方法? ?下一篇:?没有了
网络大专、自考本科,学历轻松拿!
?2016-2020 上海内威职业技能培训学校 版权所有
普陀区真南路1051弄5号303室(邮编:200331)
咨询:021-62434966? 合作:021-13371929650? 就业:021-62434966? 传真:021-? 电邮:service@snetway.com
《中华人民共和国电信与信息服务业务》经营许可证沪ICP备15002602号?