天天看點

java drawimage報錯,drawImage函數怎麼用?

drawImage函數怎麼用?

大家好。我是新手哦!我準備學java,但是最近有個問題一直讓我很郁悶。想請教一下各位前輩。

在繪畫圖檔(應用drawImage函數),我是怎麼樣也繪畫不出,編譯運作都沒錯,檔案路徑我也設對了的呀。就是我按照一個源程式抄下來,還是畫不出。想問一下,這是什麼原因呀?----------------解決方案--------------------------------------------------------

好像你一個人申請了好幾個ID啊。。。這樣的馬甲太過分吧!!!

----------------解決方案--------------------------------------------------------

也不是好多   我很少上論壇的,隻是我郵箱和我ID一樣, 我想學好java,感覺這論壇很有用 ,是以就加入你們了   請多指教呀?

----------------解決方案--------------------------------------------------------

樓主用馬甲确實不厚道,以後要注意啊(做人就要光明正大:)!

關于Image的使用,我貼一個代碼吧,希望對你有些用處:

程式代碼:

import java.awt.*;

import java.io.*;

import javax.swing.*;

import javax.imageio.*;

class MyPanel extends JPanel {

private Image image;

private static final long serialVersionUID = 100001L;

MyPanel() {

try {

image = ImageIO.read(new File(\"test.jpg\"));

} catch(IOException e) {

e.printStackTrace();

}

}

public void paintComponent(Graphics g) {

super.paintComponent(g);

if (image == null) return;

g.drawImage(image, 0, 0, null);

}

}

public class Test {

public static void main(String[] args) {

JFrame frame = new JFrame(\"Image Test\");

frame.getContentPane().add(new MyPanel());

frame.setSize(400, 400);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

}

}

----------------解決方案--------------------------------------------------------

javax.imageio.IIOException: Can't read input file!

at javax.imageio.ImageIO.read(ImageIO.java:1279)

at MyPanel.<init>(MyImage.java:12)

at Test.main(MyImage.java:29)

我運作的時候就發生這樣的異常。我想可能是我沒半圖檔放對地方  是不是呀?

----------------解決方案--------------------------------------------------------

image = ImageIO.read(new File("test.jpg");

-------------------------------------------

你把上面test.jpg換成自己需要的圖檔絕對路徑就可以了;

要不然直接把圖檔和程式放在同一個目錄,然後直接寫圖檔名。

----------------解決方案--------------------------------------------------------

好像有一種方式是image = Component.getToolkit().getImage("test.file");

這種方法也可以嗎?

----------------解決方案--------------------------------------------------------

drawImage方法是一個顯示圖像的方法,并不是畫圖像

----------------解決方案--------------------------------------------------------