为什么img.getHeight(null)和img.getWidth(null)总返回-1?图片可以正常画出

qq_32122581 2016-01-13 01:50:32
public class FrameGame extends JFrame{
PanelGame pe=null;
public FrameGame(){
//设置标题
this.setTitle("java俄罗斯方块");
//设置大小
this.setSize(1200, 700);
//定义让窗体居于显示器中间显示
Toolkit toolkit=Toolkit.getDefaultToolkit();
Dimension screen= toolkit.getScreenSize();
int h=(int)screen.getHeight();
int w=(int)screen.getWidth();
this.setLocation((w-this.getWidth())/2, (h-this.getHeight())/2);
//将PanelGame面板对象添加到窗体中
pe=new PanelGame();
this.add(pe);
//定义不允许改变窗体大小
//this.setResizable(false);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

}

package main;

import ui.FrameGame;

public class Main {
public static void main(String[] args){
new FrameGame();
}

}

package ui;

import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import javax.swing.ImageIcon;
import javax.swing.JPanel;

public class PanelGame extends JPanel{
private Lay lay1=new Lay(32,32,128,256);
public PanelGame(){

}
@Override
public void paintComponent(Graphics g){
lay1.createWindow(g);

}
}



package ui;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
public class Lay {

private static final int SIZE=7;
Image img=Toolkit.getDefaultToolkit().getImage("graphics/window/Window.png");
int picW=img.getWidth(null);
int picH=img.getHeight(null);
/*窗口左上角x坐标
* */
private int x;
/*窗口左上角y坐标
* */
private int y;
/*窗口宽度
* */
private int w;
/*窗口高度
* */
private int h;



public Lay(int x, int y, int w, int h) {
this.x = x;
this.y = y;
this.w = w;
this.h = h;
}



public void createWindow(Graphics g){

g.drawImage(img, 0, 0, null);
System.out.println(picW);
System.out.println(picH);

}


}

...全文
571 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_32122581 2016-01-13
  • 打赏
  • 举报
回复
Image img=Toolkit.getDefaultToolkit().getImage("graphics/window/Window.png");如果换成Image img=new ImageIcon("graphics/window/Window.png").getImage();怎么就不会返回-1?

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧