2012-07-18 42 views
0

我想在我的applet中使用getCodeBase()來顯示球的簡單圖像,但是當我運行我的applet時,不顯示任何內容,或者從eclipse中得到語法錯誤在我的字符串參數在getImage方法。 我的錯誤是「Syntax error:invalid escape sequences。Only \ b \ n \ f \'\'allowed。」Eclipse在Java applet中顯示圖像

我的圖像存儲在C:\ Java \ eclipse \ Images(Java)\ ball.gif

這裏是我的代碼:

import java.awt.*; 
import java.applet.*; 
public class Image1 extends Applet { 
    private static final long serialVersionUID = 1L; 
    Image pic; 
    public void init(){ 
     pic = getImage(getCodeBase(), "\Images(Java)\ball.gif"); 
    } 
    public void paint(Graphics g){ 
     g.drawImage(pic,0,0,this); 
     g.drawImage(pic, 100,100,125,100,this); 
    } 
} 
+0

你可以閱讀更多有關使用Java [這裏](http://docs.oracle.com/javase/tutorial/java/轉義字符data/characters.html) – 2012-07-18 07:31:10

+0

1)用於啓動applet的HTML是什麼? 2)注意圖像路徑中的所有斜槓應該是一個URL,所以使用正斜槓'/',而不是反斜槓 - 一個(僅限Windows)文件路徑。 3)從字符串中刪除前導bcak-slash,因爲這意味着「網站的根目錄」。在這種情況下,它相當於'C:\ Images(Java)\ ball.gif'的路徑。 – 2012-07-18 08:07:52

+0

我沒有使用HTML,因爲我在eclipse中編寫它 – imulsion 2012-07-19 06:08:21

回答

0

只是一些提示...

  • A)你不能用getCodeBase()方法得到局部圖像,因爲它 返回HTTP:// ...的應用程序讓位置路徑。在你的IDE情況下,HTTP是不可...
  • B)要獲得主機的圖像與getCodeBase()你必須部署 小程序一個真正的主機上,而不是用AppletViewer
  • C)測試它的如果你只是需要一個用於在IDE中測試您的小程序的圖像,您可以簡單地通過使用ImageIO來獲取它 。我記得AppletViewer是OK與io.*; LIB

好運

+0

好的......你告訴過我如何不做**,但我該如何去做呢? – imulsion 2012-07-20 06:28:27

+0

你說你在Eclipse中有applet,所以applet沒有部署。如果尚未部署,則不能使用getCodeBase(),因爲它僅返回applet HOST root;如果您只需在部署之前測試您的小程序,請閱讀步驟C;如果你想在applet託管模式下獲取圖像,請閱讀步驟B;並看到整個圖片顯示getImage(...,...)方法代碼... – user592704 2012-07-20 17:01:48