Flex组件 自动提示输入框

转自 http://bbs.airia.cn/thread-7783-1-1.html

Flex组件 自动提示输入框
首先要说的是这个AutoQueryTextInput组件,做Web开发的应该都有用过这也的组件,就是在用户边输入内容,自动根据用户数据从后台取回数据,并显示一个下拉列表提示用户,以自动补齐或动态查询。这个AutoQueryTextInput组件实现这一功能的Flex实现。另外考虑到后台获取数据的方式的诧异性,实际的后台数据获取是由用户自己实现(监听query事件并向后台获取数据),然后在数据获取到后,将获取的数据赋值给AutoQueryTextInput.serviceData。下面是一个示例:
<?xml version="1.0" encoding="utf-8"?>    
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"   
    xmlns:eshangrao="http://www.eshangrao.com">    
    <mx:Script>    
        <! 
[CDATA[    
            import mx.collections.ArrayCollection;    
            private function doQuery():void{    
                var data:ArrayCollection=new ArrayCollection();    
                for(var i:int;i<6;i++){    
                    var obj:Object=new Object();    
                    obj.ID=i;    
                    obj.label=aqti.text+"index:"+i;    
                    data.addItem(obj);    
                }    
                aqti.serviceData=data;//获取到数据后,显示提示列表    
            }    
            private function serviceDataShowFunction(item:Object):String{    
                return item.ID+"-"+item.label;    
            }    
        ]]>    
    </mx:Script>    
    <mx:Form>    
        <mx:FormItem label="test:">    
            <eshangrao:AutoQueryTextInput id="aqti" query="doQuery()" serviceDataShowType="{AutoQueryTextInput.SHOW_CUSTOM}" serviceDataShowFunction="{serviceDataShowFunction}"/>    
        </mx:FormItem>    
    </mx:Form>    
</mx:Application>   

<?xml version="1.0" encoding="utf-8"?> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:eshangrao="http://www.eshangrao.com"> 
    <mx:Script> 
        <![CDATA[ 
            import mx.collections.ArrayCollection; 
            private function doQuery():void{ 
                var data:ArrayCollection=new ArrayCollection(); 
                for(var i:int;i<6;i++){ 
                    var obj:Object=new Object(); 
                    obj.ID=i; 
                    obj.label=aqti.text+"index:"+i; 
                    data.addItem(obj); 
                } 
                aqti.serviceData=data;//获取到数据后,显示提示列表 
            } 
            private function serviceDataShowFunction(item:Object):String{ 
                return item.ID+"-"+item.label; 
            } 
        ]]> 
    </mx:Script> 
    <mx:Form> 
        <mx:FormItem label="test:"> 
            <eshangrao:AutoQueryTextInput id="aqti" query="doQuery()" serviceDataShowType="{AutoQueryTextInput.SHOW_CUSTOM}" serviceDataShowFunction="{serviceDataShowFunction}"/> 
        </mx:FormItem> 
    </mx:Form> 
</mx:Application> 

SystemFontsRichTextEditor: 
SystemFontsRichTextEditor组件的功能很简单,就是一个会自动读取您的系统当前可用字体列表并添加到字体选择框的RichTextEditor: 
http://livedocs.adobe.com/flex/3/langref/mx/controls/RichTextEditor.html 
http://labs.eshangrao.com/flex/2/plum/Plum/docs/com/eshangrao/controls/SystemFontsRichTextEditor.html

你可能感兴趣的:(html,xml,Flex,Adobe,bbs)