2011-09-19 2 views
0

VBox를 확장하여 일부 "기본값"과 상용구 코드 (여기서는 "VBoxSub"라고 부름)를 추가하고 싶습니다. 응용 프로그램의 "페이지"가이 VBox 하위 클래스를 확장한다는 아이디어가 있습니다.플렉스 - 기본 구성 요소로 사용할 VBox의 서브 클래 싱, 필요한 조언

"VBoxSub"를 확장하는 최종 클래스가 Flash Builder의 디자인 모드에서 VBoxSub에 설정된 너비/높이 설정을 상속받지 않는다는 점을 제외하고는 정상적으로 작동하는 것 같습니다. 구성 요소가 비어있는 디자인 모드로 전환하면 기본 VBox CSS 배경색이있는 더 큰 1000x700 작업 영역 대신 작은 일반 상자로 표시됩니다. 무슨 일 이니? (예, 디자인보기를 새로 고치거나 다시 시작해 보았습니다.)

UI를 배치 할 때 정확히 얼마만큼의 공간을 사용해야 하는지를 알기 위해이 구성 요소를 모두 정확히 같은 크기로 만들고 싶습니다. - 바람직하게는 없이 width와 height 속성을 모든 darn mxml 파일에 복사/붙여 넣기해야합니다 (w/h가 변경되면 각 항목을 업데이트하는 것에 대해 걱정할 필요가 없습니다).

내가이 그것을 작동하도록하는 일을 해봤 (플래시 빌더 4, SDK 4.1을 사용하지 않음),하지만 여전히 디자인보기에 좋은 :

override protected function measure():void { 
    super.measure(); 

    measuredWidth=1000; 
    measuredMinWidth=1000; 
    measuredHeight=700; 
    measuredMinHeight=700; 
} 

나는 정말 열심히 코드 너비/높이해야합니까 구성 요소 "페이지"응용 프로그램 내에서?

답변

0

Flash Builder 은 디자인 모드에서 Actionscript를 실행하지 않습니다. AS 코드가 실행되지 않기 때문에 VBox는 디자인 모드에서 측정되지 않습니다.

그런 상황에서는 선언적 MXML을 사용해야합니다.

+0

아, 여기서 누락 된 열쇠라고 생각합니다. 당신은 내가 mxml 구성 요소를 만들 수 있고 mxml 속성을 통해 measuredWidth/etc를 설정할 수 있다고 말하고 있습니까? – Mifune