qq_BigGoldenFish 2015-04-04 06:51 采纳率: 0%
浏览 1456

我的imageicon无法显示图片,程序白板,还退步出去了,求解啊o. o!

package image;

import java.awt.*;
import javax.swing.*;

//运行白板关也关不了
public class ImageTest {
public static void main(String args[])
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame=new ImageFrame();
frame.setTitle("ImageTest");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}

}
class ImageFrame extends JFrame
{
public ImageFrame()
{
add(new ImageComponent());
pack();
}
}
class ImageComponent extends JComponent
{
private static final int DEFAULT_WIDTH=3000;
private static final int DEFAULT_HEIGHT=2000;

private Image image;

public ImageComponent()
{
    image=new ImageIcon("test.jpg").getImage();
}


public void paintComponent(Graphics g)
{
    if (image==null) return;//什么意思,返回什么;
    int imageWidth=image.getWidth(this);//观察者这块是什么代码内容
    int imageHeight=image.getHeight(this);

    //draw image in the upper left corner
    g.drawImage(image,0,0,null);
    //tile the image across the component
    for(int i=0;i*imageWidth<=getWidth();i++)
        for(int j=0;j*imageHeight<=getHeight();j++)
            if(i+j>0)
                g.copyArea(0, 0, imageWidth, imageHeight, i*imageWidth, j*imageHeight);

}
public Dimension getPreferredSize()
{
    return new Dimension(DEFAULT_WIDTH,DEFAULT_HEIGHT);
}

}

  • 写回答

2条回答 默认 最新

  • devmiao 2015-04-04 14:39
    关注

    if (image==null)
    看看图片是不是为空

    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站