2011-03-24 4 views
1

검정색 배경에 흰색 텍스트가있는 Flex3 TextInput 컨트롤이 있습니다. 흰색 배경 (또는 비슷한)에서 검정 텍스트를 사용하기 위해 컨트롤 내에서 강조 표시된 텍스트의 스타일을 변경하고 싶습니다. Flex 스타일을 사용하여이 작업을하고 싶지만 빈 손으로 작업 할 것입니다. 어떤 아이디어?TextInput 컨트롤의 선택된 텍스트에 대한 강조 색상 변경

답변

3

나는 얼마 전에 이것을 쫓아 왔으며 막 다른 골목에왔다. Flash Player에서 하드 코딩 된 제한 사항입니다. 나는 누군가가 나를 틀리게 증명할 수 있다면 그것을 좋아할 것이지만, 나는 이것이 사실이라고 확신한다. 다른 포스터가 지적했듯이, 이것은 더 이상 새로운 Spark 구성 요소의 문제가 아닙니다.

+0

얼마나 불행한가요? 현재 진행중인 프로젝트는 앞으로 언젠가 Flex 4로 업그레이드 될 예정이며, 고객은 그때까지 기다려야 할 것입니다. – Clavicle

+0

들려요. 이것은 나를위한 좌절의 큰 원천이었습니다. 당시 매우 어두운 테마로 앱을 작업 중이었기 때문에 강조 표시를 볼 수 없었습니다. –

+0

@WadeMueller, 당신은 새로운 스파크 구성 요소에 문제가 없다고 말하고 있습니다. 형광펜 색을 변경하는 것이 문제가 아님을 의미합니까? 또는 형광펜 아래의 텍스트 색상? 나는 두 번째 질문에 대한 답을 절실히 찾고있다. 강조 표시되는 동안 텍스트의 색상을 변경하고 싶습니다. Spark 구성 요소로는 불가능한 이벤트 인 것 같습니다. 내가 맞습니까? –

1
textinput.setStyle(“unfocusedTextSelectionColor”,”#00FF00″); 
textinput.setStyle(“focusedTextSelectionColor”,”#00FF00″); 
textinput.setStyle(“inactiveTextSelectionColor”,”#00FF00″); 

사용자 정의 styleInitialized() 메소드에 코드를 삽입해야 할 수 있습니다 스타일을 설정하는 방법에 대한 자세한 내용은

override public function stylesInitialized():void 
{ 
    super.stylesInitialized(); 

    textinput.setStyle(“unfocusedTextSelectionColor”,”#00FF00″); 
    textinput.setStyle(“focusedTextSelectionColor”,”#00FF00″); 
    textinput.setStyle(“inactiveTextSelectionColor”,”#00FF00″); 
}; 

은 다음을 참조하십시오 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/supportClasses/SkinnableTextBase.html#style:focusColor

행운을 빌어 요, 롭

+0

안녕 롭, 응답에 대한 감사합니다. 불행히도 Flex 3 TextInput을 사용하여 막혔습니다. 언급 한 스타일은 Flex 4 스파크 구현에서만 사용할 수 있습니다. – Clavicle

0

플렉스 3을 사용하면 스타일을 변경하여 원하는 효과를 얻을 수 있습니다.

MXML :

<mx:TextInput 
     styleName="{(whatever.isSomething() || whatever.isSomethingElse()) ? 'TextInputBlackOnWhite' : 'TextInputWhiteOnBlack'}" 
     text="{whatever.value}"/> 

스타일 :

.TextInputBlackOnWhite 
{ 
    borderSkin: Embed(source="assets/images/TextInput_BlackOnWhite.png", scaleGridLeft="2",scaleGridTop="2",scaleGridRight="19",scaleGridBottom="19"); 
    color: #000000; 
} 

.TextInputWhiteOnBlack 
{ 
    borderSkin: Embed(source="assets/images/TextInput_WhiteOnBlack.png", scaleGridLeft="2",scaleGridTop="2",scaleGridRight="19",scaleGridBottom="19"); 
    color: #FFFFFF; 
}