2012-03-12 2 views

답변

2

구성 요소의 페인트 방법은 사용자가 창을 이동하거나 끌어서 크기를 조정할 때마다 ... 그리고 여러 다른 상황에서 호출됩니다. 따라서 페인트 메서드를 사용하여 구성 요소를 (다시) 그리기하고로드 프로세스를 한 번만 호출하십시오.

예를 들어, 이미지의 작은 이미지를 만들고 클래스의 어떤 종류에서 그들을 캐시 :

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,..,..,..,..); 
    } 
} 
관련 문제