사용자 정의 레이아웃

때때로 사용자 자신의 사용자 정의 클래스 Layout을 작성해야 합니다. 응용프로그램의 다른 많은 곳에서 사용하는 복잡한 레이아웃이 있을 경우에 이 클래스가 가장 적당합니다. 여러 Composite 위지트(widget)에서 사용하는 아주 일반적인 레이아웃을 작성하지 않으면 간혹 크기 조정 리스너에서 크기 및 위치 하위 요소를 계산하는 것이 더 쉽고 간단합니다.

레이아웃에서는 다음과 같은 두 가지 메소드를 구현해야 합니다.

세 번째 메소드 flushCache(...)는 특정 제어와 연관되는 캐시된 데이터를 지우도록 선택적으로 구현할 수 있습니다. 위지트(widget)의 computeSize() 메소드를 사용하면 성능상의 대가가 요구될 수 있으므로 성능 개선을 위해 레이아웃이 결과를 캐싱할 수 있습니다.

사용자 정의 레이아웃에 대한 자세한 설명은 SWT의 레이아웃 이해에 있습니다.