用java写了一个登录界面,求大神解答如何给窗体加上背景图片

求解怎样给窗体加上背景图片代码如下:publicclassWelDemoextendsJFrameimplementsActionListener{//全局变量属性JBu... 求解怎样给窗体加上背景图片
代码如下:
public class WelDemo extends JFrame implements ActionListener{
//全局变量 属性
JButton ok_jb;
JButton cancel_jb;
JPanel p1;//第一块面板 放置欢迎标签
JPanel p2;//第二块面板 放置用户名 密码 单选按钮的面板
JPanel p21,p22,p23;//第二块大面板上的小面板
JPanel p3;//第三块面板 放置两个按钮
JLabel wel_lab;//标签 欢迎标签
JLabel name_lab;//姓名的标签
JLabel pwd_lab;//密码的标签
JTextField name_text;//用户名的文本框
JPasswordField pwd_text;//密码框
JRadioButton jrb_1;//单选按钮 高级
JRadioButton jrb_2;//单选按钮 中级
JRadioButton jrb_3;//单选按钮 初级
public WelDemo(){
this.setTitle("学生登录系统");//设置标题
this.setLocation(300,250);//设置位置
this.setSize(450,220);//设置大小
//this.setVisible(true);
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);//设置关闭
//设置窗体的布局
this.setLayout(new BorderLayout());
//对第一个欢迎标签实例化
wel_lab=new JLabel("欢迎您使用学生登录系统");
//实例化第一个面板
p1=new JPanel();
//把第一个欢迎标签添加到第一块面板
p1.add(wel_lab);
//将第一块面板放置在窗体的最北端
this.add(p1,BorderLayout.NORTH);
//实例化用户名标签
name_lab=new JLabel("用户名:");
//实例化用户名的文本框 并设置其长度为20
name_text=new JTextField(20);
//实例化第二块大面板上的第一块小面板
p21=new JPanel();
//把用户名标签添加到第一块的小面板
p21.add(name_lab);
//把用户名文本框添加到第一块小面板
p21.add(name_text);
//实例化密码标签
pwd_lab=new JLabel("密 码:");
//实例化密码框,并设置其大小为20
pwd_text=new JPasswordField(20);
//实例化第二块小面板
p22=new JPanel();
//将密码标签添加到第二块小面板
p22.add(pwd_lab);
//把密码框添加到第二块小面板
p22.add(pwd_text);
//实例化三个单选按钮
jrb_1=new JRadioButton("高级");
jrb_2=new JRadioButton("中级");
jrb_3=new JRadioButton("初级");
//将三个单选按钮放置在按钮组里面
ButtonGroup bg=new ButtonGroup();
bg.add(jrb_1);
bg.add(jrb_2);
bg.add(jrb_3);
//将三个单选按钮放置在第三个小面板
p23=new JPanel();
p23.add(jrb_1);
p23.add(jrb_2);
p23.add(jrb_3);
//实例化第二块大面板
p2=new JPanel();
//分别将三个小面板添加到第二块大面板上
p2.add(p21);
p2.add(p22);
p2.add(p23);
//将第二块大面板放置在窗体的中部
this.add(p2,BorderLayout.CENTER);
//实例化两个按钮,确定和取消
ok_jb=new JButton("确定");
cancel_jb=new JButton("取消");
//实例化第三块大面板
p3=new JPanel();
//将确定按钮和取消按钮分别添加到第三块大面板
p3.add(ok_jb);
p3.add(cancel_jb);
//将第三块大面板放置在窗体的南部
this.add(p3,BorderLayout.SOUTH);
}
/*
* 测试所编写的类
*/
public static void main(String[] args){
//实例化这个类,对象名是wd
WelDemo wd=new WelDemo();
//设置这个wd窗体显示
wd.setVisible(true);
}
展开
 我来答
xanfx_mads
推荐于2016-10-15
知道答主
回答量:5
采纳率:0%
帮助的人:4.8万
展开全部
直接先设置一个JLabel, 大小铺满整个窗体,之后在加控件。

Image img=Toolkit.getDefaultToolkit().createImage(绝对路径"F:\\xxxx.png");

JLabel dtb=new JLabel();

dtb.setIcon( new ImageIcon(img));
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式