여러 용도로 사용되는 Flex 3.5 응용 프로그램이 있는데 응용 프로그램의 모드를 나타 내기 위해 시각적으로 변경 한 부분으로 배경색을 변경하고 싶습니다.Flex 3.5 응용 프로그램에서 런타임에 응용 프로그램 배경색을 어떻게 변경합니까?
현재 응용 프로그램 태그는 다음과 같습니다
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:com="ventures.view.component.*"
xmlns:views="ventures.view.*"
layout="absolute"
preinitialize="onPreInitialize()"
creationComplete="onCreationComplete()"
applicationComplete="onApplicationComplete()"
click="onClick(event)"
enabled="{(!chainController.generalLocked)}"
backgroundGradientColors="[0xFFFFFF, 0xFFFFFF]"
>
내가 모두 backgroundColor
및 backgroundGradientColors
속성에 대한 바인딩을 사용하여 시도했다 :
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
...
backgroundColor="{app_background_color}"
>
— 및 —
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
...
backgroundGradientColors="{app_background_color}"
>
을
그러나 f 또는 이전 바인딩은 허용되지 않으며 후자에 대해서는 다음과 같은 경고가 있습니다.
데이터 바인딩은 "app_background_color"에 대한 할당을 검색 할 수 없습니다.
나는 또한 내가 setStyle()
방법을 함께 할 수 있다는 것을 나타 내기 위해 보인다 this page 가로 질러하지만,이 방법은 구성 요소가 아닌 주요 캔버스에서만 사용할 수 있음을 나타냅니다 the documentation 보인다.
<mx:Canvas></mx:Canvas>
의 모든 것을이 목적으로 특별히 지정할 수 있다고 생각하지만, —과 같이 HTML 또는 그와 비슷한 것이 낭비되는 것 같습니다.
런타임시 기본 응용 프로그램 배경색을 변경하는 가장 좋은 방법은 무엇입니까?
이것은 어떻게 [플렉스 3 스타일 탐색기] (HTTP : //examples.adobe를 .com/flex3/consulting/styleexplorer/Flex3StyleExplorer.html)이 작동하지만 아직 내 응용 프로그램에서 작동하지 않습니다. 더 이상 작업하지 못하게하는 다른 것이 있는지 확인하십시오. –
내 응용 프로그램 태그에서'backgroundColor' /'backgroundGradientColors' 정의를 제거하고 onApplicationComplete에서 명시 적으로 색상을 하나 또는 다른 것으로 설정했습니다. 그렇게함으로써,이 솔루션은 완벽하게 작동했습니다. –