设置TextInput控件获得焦点时边框的某一角为圆角.

本文介绍如何使用Flex框架中的TextInput控件实现自定义焦点高亮的圆角效果。提供了三种方式来设置focusRoundedCorners属性:直接在XML中设置、通过ActionScript代码动态设置及使用CSS样式设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TextInput控件的focusRoundedCorners样式学习.
示例:


代码:

<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/06/12/rounding-specific-corners-on-a-focus-rectangle-in-the-textinput-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white">

    
<mx:Script>
        
<![CDATA[
            private function checkBox_change(evt:Event):void {
                var corners:Array = [];
                if (tLeft.selected) {
                    corners.push("tl");
                }
                if (tRight.selected) {
                    corners.push("tr");
                }
                if (bLeft.selected) {
                    corners.push("bl");
                }
                if (bRight.selected) {
                    corners.push("br");
                }
                var str:String = corners.join(" ");
                textInput.setStyle("focusRoundedCorners", str);
                focusManager.setFocus(textInput);
            }
        
]]>
    
</mx:Script>

    
<mx:ApplicationControlBar dock="true">
        
<mx:Form styleName="plain">
            
<mx:FormItem label="top left (tl):">
                
<mx:CheckBox id="tLeft"
                        selected
="true"
                        change
="checkBox_change(event);" />
            
</mx:FormItem>
            
<mx:FormItem label="top right (tr):">
                
<mx:CheckBox id="tRight"
                        selected
="true"
                        change
="checkBox_change(event);" />
            
</mx:FormItem>
            
<mx:FormItem label="bottom left (bl):">
                
<mx:CheckBox id="bLeft"
                        selected
="true"
                        change
="checkBox_change(event);" />
            
</mx:FormItem>
            
<mx:FormItem label="top right (br):">
                
<mx:CheckBox id="bRight"
                        selected
="true"
                        change
="checkBox_change(event);" />
            
</mx:FormItem>
        
</mx:Form>
    
</mx:ApplicationControlBar>

    
<mx:TextInput id="textInput"
            focusThickness
="10"
            cornerRadius
="10" />

</mx:Application>

你可以在标签内直接设置属性:
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/06/12/rounding-specific-corners-on-a-focus-rectangle-in-the-textinput-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white">

    
<mx:TextInput id="textInput"
            focusThickness
="10"
            cornerRadius
="10"
            focusRoundedCorners
="tl br" />

</mx:Application>

或者通过CSS设置:
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/06/12/rounding-specific-corners-on-a-focus-rectangle-in-the-textinput-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white">

    
<mx:Style>
        TextInput {
            focusRoundedCorners: "tl br";
        }
    
</mx:Style>

    
<mx:TextInput id="textInput"
            focusThickness
="10"
            cornerRadius
="10" />

</mx:Application>

转载于:https://www.cnblogs.com/xxcainiao/archive/2008/06/16/1222887.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值