我想顯示一個圖像,但不知道該怎麼辦。無論我需要安裝一些庫文件,還是隻需要安裝它,我都不知道。其實我想做圖像處理,但首先我必須把圖像輸入和顯示圖像,然後我可以得到圖像處理的效果作爲輸出,並決定它(算法)是否正確。我只安裝了eclipse。我也在谷歌搜索,但無論他們建議是不是很好。要麼我必須安裝或不安裝。 我曾嘗試下面的代碼:在Java中顯示圖像
import java.awt.EventQueue;
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class ImageTest {
public static void main(String[] args){
EventQueue.invokeLater(new Runnable()
{
public void run(){
ImageFrame frame = new ImageFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
);
}
}
class ImageFrame extends JFrame{
public ImageFrame(){
setTitle("ImageTest");
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
ImageComponent component = new ImageComponent();
add(component);
}
public static final int DEFAULT_WIDTH = 300;
public static final int DEFAULT_HEIGHT = 200;
}
class ImageComponent extends JComponent{
/**
*
*/
private static final long serialVersionUID = 1L;
private Image image;
public ImageComponent(){
try{
File image2 = new File("bishnu.jpg");
image = ImageIO.read(image2);
}
catch (IOException e){
e.printStackTrace();
}
}
public void paintComponent (Graphics g){
if(image == null) return;
int imageWidth = image.getWidth(this);
int imageHeight = image.getHeight(this);
g.drawImage(image, 50, 50, this);
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);
}
}
它只是顯示了一個圖形化的窗口,但不能顯示圖像「bishnu.jpg」
我應該安裝在eclipse什麼?但我認爲沒有必要安裝。
你已經嘗試了什麼......請,這樣,代碼... – Lionel