2012-03-08 2 views
3

내가 다음 그림과 같이 모양의 버튼을 만들려고하고 있어요 그러나하고 설계하는 사용자 정의 버튼

class ArrowButton extends Composite { 
    ArrowButton(Composite parent, int style) { 
     [...] 
     setRegion(customRegion); 
    } 
} 

addStuff(Composite parent) { 
    ArrowButton b = new ArrowButton(parent, SWT.NONE); 
    b.setBounds(x, y, width, height); 
} 

을, 나는에 레이아웃 매니저를 사용하려면 이 단추를 배치하십시오. 버튼은 표준 크기로 배치하는 것이 가장 이상적이며, 그 후에도이 영역 밖으로 칠할 수 있습니다.

이 모든 것이 가능합니까? 어떻게해야합니까?

답변

1

레이아웃 관리자에는 두 가지 기능이 있습니다. 적용되는 합성의 크기를 계산하고 복합 요소의 경계를 설정하는 것입니다. 요구 사항의 상대적인 단순성 (가로형 단추)을 감안할 때 기존 구현을 해킹하려고 시도하는 대신 레이아웃을 직접 수행하는 것이 더 낫다고 말하고 싶습니다. 더 나은 느낌이 들면 언제든지 코드를 Layout 인터페이스 뒤에있는 델리게이트에 넣을 수 있습니다.