Flex: когда у объекта есть фокус, выделите родительский вместо? - PullRequest
1 голос
/ 27 мая 2009

У меня есть TextInput и объект Canvas внутри объекта HBox. Когда поле ввода текста имеет фокус, оно подсвечивается, я хотел бы изменить его на содержащий HBox, который подсвечивается, когда фокус ввода у текста.

У кого-нибудь есть идеи, как мне это сделать?

Вот мой код:

<mx:HBox 
        keyDown="checkKey(event)" 
        horizontalGap="0">
        <mx:TextInput 
            id="searchBox" 
            width="500" 
            fontSize="25" 
            backgroundColor="#F0F0F0" 
            borderThickness="2" 
            borderColor="#666666" 
            borderStyle="solid"/>
        <mx:Canvas 
            borderThickness="2" 
            borderColor="#666666" 
            borderStyle="solid" 
            backgroundColor="#666666">
            <mx:Button 
                label="Search" 
                click="searchInputText()" 
                fontSize="21" 
                styleName="primaryButton"/>
        </mx:Canvas>
    </mx:HBox>

Спасибо!

1 Ответ

0 голосов
/ 27 мая 2009

Я не думаю, что у HBoxes подсветка включена по умолчанию. Но вы можете заставить HBox реагировать на событие focusIn: установка альфа фильтра в 0 делает его полностью прозрачным.

<mx:HBox 
    name="parentHBox"
    keyDown="checkKey(event)" 
    horizontalGap="0">
    <mx:filters>
        <mx:GlowFilter alpha=0.0>
    </mx:filters>
    <mx:TextInput 
            id="searchBox" 
            ...
            focusIn="{HBoxGlowFilter.alpha = 1.0}"
            focusOut="{HBoxGlowFilter.alpha = 0.0}"/>
    <mx:Canvas 
            ...>
            <mx:Button 
                    label="Search" 
                    click="searchInputText()" 
                    fontSize="21" 
                    styleName="primaryButton"/>
    </mx:Canvas>
</mx:HBox>

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...