2012-03-12 59 views

回答

2

每次移動,拖動,調整窗口大小......窗口以及其他幾種情況時,都會調用組件的繪畫方法。因此,只能使用paint方法(重新)繪製組件並僅調用一次加載過程。

創建圖像的小縮略圖,並在某種類的緩存它們,例如:

class Thumbnail extends Component { 
    ... 
    BufferedImage cachedThumbnail; 

    public Thumbnail(File thumbnailFile) { 
     //read image 
     //(scale image) 
     this.cachedThumbnail = ...; 
    } 
    ... 
    public static void paint(Graphics2D g) { 
    //only paint the cached image ... 
    g.drawImage(cachedThumbnail,..,..,..,..); 
    } 
} 
相關問題