我想知道你們是否可以幫助我。我試圖用Java內置的圖形模塊製作一個動畫程序......事情是,Java一次執行所有內容;在不同的動畫之間沒有任何時間。最終產品只是最後一張照片。我需要在每張照片之間放置半秒的功能。Java等待函數
任何幫助表示讚賞。
規格:藍-J,JDK 6
編輯:順便說一句,我是一個Java新手,這是一類的東西。這個任務是製作一個動畫,並按'c'前進每一幀,但我認爲那有點貧民窟,所以我想要更好的東西。
我想知道你們是否可以幫助我。我試圖用Java內置的圖形模塊製作一個動畫程序......事情是,Java一次執行所有內容;在不同的動畫之間沒有任何時間。最終產品只是最後一張照片。我需要在每張照片之間放置半秒的功能。Java等待函數
任何幫助表示讚賞。
規格:藍-J,JDK 6
編輯:順便說一句,我是一個Java新手,這是一類的東西。這個任務是製作一個動畫,並按'c'前進每一幀,但我認爲那有點貧民窟,所以我想要更好的東西。
創建一個執行每個X毫秒的javax.swing.Timer,並在每次觸發時繪製一幀。
這是從Javadoc中的示例:
int delay = 1000; //milliseconds
ActionListener taskPerformer = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
//...Perform a task...
}
};
new Timer(delay, taskPerformer).start();
修改延時向例如20毫秒。如果你的繪畫不需要太長時間,這將會給你每秒約50幀。
也許一個簡單的睡眠可能就足夠了嗎?
Thread.sleep(milliseconds);
我是一個巨大的新手在java ..但即時通訊試圖瞭解這個..我只是把這個新的函數,然後把它放在使動畫的while循環? – 2011-05-19 06:43:23
噢,沒關係,我想我會看到它..所以我會把我的循環放在代碼塊裏,它說「Preform a task」...對嗎? – 2011-05-19 06:44:57
您不應該有製作動畫的while循環。您需要更改代碼,以便僅繪製一幀動畫。上面的代碼應該觸發繪圖,每個繪圖將繪製下一個框架。 – Kaj 2011-05-19 06:45:19