[英]jpanel dont draw a buffered image but the buffered image can be created as file
嗨,我有一個jpanel可以借鑒。 我從這個jpanel中制作了bufferedimages並將它們安全地保存到鏈表中。 按下按鈕時,我想使此bufferedimages動畫(一個接一個播放),問題是jpanel不顯示緩沖的圖像,但是當我使用ImageIO.write來保護磁盤上的bufferedimages時,我得到了所有要進行動畫處理的圖片。 請幫助我。
這是我的代碼:
public void run(){
for(int i=0;i`<`cm.animationListe.size();i++){
b= cm.animationListe.get(i);
try {
ImageIO.write( b, "png", new File( "c:/java/circle"+i+".png" ) );
} catch (IOException e1) {
e1.printStackTrace();
}
try {
Thread.sleep(1000);
repaint();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}
animation = false;
}
public void paintComponent(Graphics g){
super.paintComponent(g);
if(animation){
g.drawImage(b,0, 0,null);
}
}
Thread.sleep()導致GUI凍結,因此無法重新繪制自身。
要制作動畫,您需要使用Swing Timer 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.