package SwingPractise;
import java.awt.*;
import javax.swing.*;
import javax.imageio.*;
import java.io.*;
//import java.awt.event.*;
public class ImageTest {
public static void main(String[] args) {
ImageFrame Frame=new ImageFrame();
Frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Frame.show();
}
}
class ImageFrame extends JFrame
{
public ImageFrame()
{
setTitle("ImageTest");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
setLocation(300,250);
ImagePanel Panel=new ImagePanel();
Container contentPane=getContentPane();
contentPane.add(Panel);
}
public static final int DEFAULT_WIDTH=300;
public static final int DEFAULT_HEIGHT=200;
public static final long serialVersionUID=1L;
}
class ImagePanel extends JPanel
{
public ImagePanel()
{
try
{
Image=ImageIO.read(new File("blue-ball.gif"));
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
public void paintComponent (Graphics g)
{
super.paintComponent(g);
if(Image==null) return;
int imageWidth=Image.getWidth(this);
int imageHeight=Image.getHeight(this);
g.drawImage(Image,0,0,null);
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);
}
private Image Image;
public static final long serialVersionUID=1L;
}创建图片时出错,提示如下:
javax.imageio.IIOException: Can't read input file!
at javax.imageio.ImageIO.read(ImageIO.java:1263)
at SwingPractise.ImagePanel.<init>(ImageTest.java:47)
at SwingPractise.ImageFrame.<init>(ImageTest.java:30)
at SwingPractise.ImageTest.main(ImageTest.java:14)
我用的是Eclipse ,我在bin目录和src目录下都试过放置图像文件"blue-ball.gif"!结果还是不行!
请大家帮忙!