2010-01-08 127 views
4

我正在開發一款貪吃蛇遊戲。我不打算移動矩形,而是計劃展示一張圖片,並希望通過按鍵移動它。在擺動中顯示圖像

但我不能用Jlabel做到這一點。因爲標籤在位置上是靜態的。

有沒有什麼方法可以將它們顯示爲圖像?

thanx。

回答

4

你不想寫一個遊戲使用擺動組件的精靈!

相反,您所做的是創建一個自定義控件(通常從JPanel或Canvas派生)元素,然後重寫paint()函數。

裏面的塗料功能你畫你的形象是這樣的:

class MyClass extends JPanel{ 
    int x,y; 
    BufferedImage myImage = ImageIO.read("mySprite.png"); 

    @Override 
    public void paint(Graphics g){ 
     g.drawImage(myImage,x,y,this); 
    } 
} 

然後在你的代碼改變x和y的值來移動你的精靈。

+1

此示例使用的是什麼版本的Java? ImageIO.read似乎沒有一個只需要Java 6中的字符串的實現。你的意思是帶有java.io.File參數的變體嗎? – Ceilingfish 2010-08-04 08:18:08