东东大东 2017-05-12 08:04 采纳率: 0%
浏览 2661
已结题

java 点击按钮改变窗口背景图

我把加载图片装成一个静态方法:
public static void setBackground(String imagename){
img1 = new ImageIcon("Image/"+imagename); //img1为ImageIcon型,静态
Image im = img1.getImage();
im = im.getScaledInstance(400, 600, Image.SCALE_DEFAULT);
img1.setImage(im);//压缩图片
imgLabel = new JLabel(img1);//将背景图放进标签,imgLabel为JLabel型,静态
imgLabel.setBounds(0,0,400,600);
}

然后哪个窗口需要设置背景就调用这个类的静态方法:
    类名.setBackground("1.jpg");
    window.getLayeredPane().add(imgLabel, new Integer(Integer.MIN_VALUE));
    ((JComponent) con).setOpaque(false);//window、con分别是当前窗口,容器

    但是如果我想点击按钮就给指定窗口换背景的话却没有反应,按钮响应部分代码:
            String name = s + ".jpg";
            类名.setBackground(s);
            指定窗口.getLayeredPane().add(类名.imgLabel, new Integer(Integer.MIN_VALUE));
            ((JComponent)指定窗口的容器).setOpaque(false);
            求解应该怎么做???
  • 写回答

2条回答 默认 最新

  • 战在春秋 2017-05-12 08:32
    关注
     String name = s + ".jpg";
    类名.setBackground(s);
    

    应该是:

     String name = s + ".jpg";
    类名.setBackground(name);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号