博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Creating a pop up TitleWindow using the PopUpButton control in Flex
阅读量:6885 次
发布时间:2019-06-27

本文共 3919 字,大约阅读时间需要 13 分钟。

The following example shows how you can create a pop up TitleWindow container using the Flex PopUpButton control

<?
xml version="1.0" encoding="utf-8"
?>
<!--
 http://blog.flexexamples.com/2008/04/13/creating-a-pop-up-titlewindow-using-the-popupbutton-control-in-flex/ 
-->
<
mx:Application 
xmlns:mx
="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white"
>
    
<
mx:Style
>
        TitleWindow {
            roundedBottomCorners: false;
            borderColor: haloSilver;
            backgroundColor: haloSilver;
            borderAlpha: 0.8;
            backgroundAlpha: 0.8;
            dropShadowEnabled: false;
        }
    
</
mx:Style
>
    
<
mx:Script
>
        
<![CDATA[
            import mx.controls.CheckBox;
            import mx.controls.dataGridClasses.DataGridColumn;
            private function checkBox_change(evt:Event):void {
                var ch:CheckBox = evt.currentTarget as CheckBox;
                var idx:int = int(ch.data);
                var obj:Object = arrColl.getItemAt(idx);
                obj.sel = ch.selected;
                arrColl.disableAutoUpdate();
                arrColl.setItemAt(obj, idx);
            }
            private function selectAll(evt:Event):void {
                var idx:int;
                var item:Object;
                for (idx=0; idx<arrColl.length; idx++) {
                    item = arrColl.getItemAt(idx);
                    item.sel = CheckBox(evt.currentTarget).selected;
                }
                arrColl.refresh();
            }
            private function sel_labelFunc(item:Object, col:DataGridColumn):String {
                var bool:Boolean = item.hasOwnProperty("sel") &&
                            (item.sel == "true" || item.sel == true);
                return bool.toString();
            }
        
]]>
    
</
mx:Script
>
    
<
mx:ArrayCollection 
id
="arrColl"
>
        
<
mx:source
>
            
<
mx:Array 
id
="arr"
>
                
<
mx:Object 
label
="Button"
 
/>
                
<
mx:Object 
label
="ButtonBar"
 
/>
                
<
mx:Object 
label
="CheckBox"
 
/>
                
<
mx:Object 
label
="ColorPicker"
 sel
="true"
 
/>
                
<
mx:Object 
label
="ComboBox"
 sel
="true"
 
/>
                
<
mx:Object 
label
="DataGrid"
 sel
="true"
 
/>
                
<
mx:Object 
label
="DateChooser"
 
/>
                
<
mx:Object 
label
="DateField"
 sel
="true"
 
/>
                
<
mx:Object 
label
="HorizontalList"
 
/>
                
<
mx:Object 
label
="HRule"
 
/>
                
<
mx:Object 
label
="HSlider"
 
/>
                
<
mx:Object 
label
="Image"
 
/>
                
<
mx:Object 
label
="Label"
 
/>
                
<
mx:Object 
label
="LinkBar"
 
/>
                
<
mx:Object 
label
="LinkButton"
 
/>
                
<
mx:Object 
label
="List"
 sel
="true"
 
/>
                
<
mx:Object 
label
="Menu"
 
/>
                
<
mx:Object 
label
="MenuBar"
 
/>
                
<
mx:Object 
label
="NumericStepper"
 sel
="true"
 
/>
                
<
mx:Object 
label
="ProgressBar"
 
/>
                
<
mx:Object 
label
="RadioButton"
 
/>
                
<
mx:Object 
label
="RadioButtonGroup"
 
/>
                
<
mx:Object 
label
="RichTextEditor"
 sel
="true"
 
/>
                
<
mx:Object 
label
="Spacer"
 
/>
                
<
mx:Object 
label
="SWFLoader"
 
/>
                
<
mx:Object 
label
="TabBar"
 
/>
                
<
mx:Object 
label
="Text"
 
/>
                
<
mx:Object 
label
="TextArea"
 
/>
                
<
mx:Object 
label
="TextInput"
 
/>
                
<
mx:Object 
label
="TileList"
 
/>
                
<
mx:Object 
label
="Tree"
 sel
="true"
 
/>
                
<
mx:Object 
label
="VideoDisplay"
 
/>
                
<
mx:Object 
label
="VRule"
 
/>
                
<
mx:Object 
label
="VScrollBar"
 
/>
                
<
mx:Object 
label
="VSlider"
 
/>
            
</
mx:Array
>
        
</
mx:source
>
    
</
mx:ArrayCollection
>
    
<
mx:ApplicationControlBar 
dock
="true"
>
        
<
mx:PopUpButton 
id
="popUpButton"
                label
="Please select some components"
                openAlways
="true"
                close
="arrColl.refresh();"
>
            
<
mx:popUp
>
                
<
mx:TitleWindow 
id
="titleWin"
                        height
="200"
                        showCloseButton
="true"
                        verticalScrollPolicy
="on"
                        horizontalScrollPolicy
="off"
                        close
="popUpButton.close();"
>
                    
<
mx:ToolBar 
width
="320"
>
                        
<
mx:Repeater 
id
="myRep"
                                dataProvider
="{arrColl}"
>
                            
<
mx:CheckBox 
data
="{myRep.currentIndex}"
                                    label
="{myRep.currentItem.label}"
                                    selected
="{myRep.currentItem.sel}"
                                    change
="checkBox_change(event);"
                                    width
="100"
 
/>
                        
</
mx:Repeater
>
                    
</
mx:ToolBar
>
                    
<
mx:ControlBar
>
                        
<
mx:CheckBox 
label
="Select All"
                                labelPlacement
="left"
                                change
="selectAll(event);"
 
/>
                    
</
mx:ControlBar
>
                
</
mx:TitleWindow
>
            
</
mx:popUp
>
        
</
mx:PopUpButton
>
    
</
mx:ApplicationControlBar
>
    
<
mx:DataGrid 
dataProvider
="{arrColl}"
>
        
<
mx:columns
>
            
<
mx:DataGridColumn 
dataField
="label"
 
/>
            
<
mx:DataGridColumn 
dataField
="sel"
                    labelFunction
="sel_labelFunc"
 
/>
        
</
mx:columns
>
    
</
mx:DataGrid
>
</
mx:Application
>
    本文转自 OldHawk  博客园博客,原文链接:http://www.cnblogs.com/taobataoma/archive/2008/04/15/1154287.html
,如需转载请自行联系原作者
你可能感兴趣的文章
MySQL5.7之Group Replication
查看>>
【MySQL】5.7新特性之五
查看>>
一个清理和查询都要兼顾的简单方案
查看>>
归档日志路径三个参数DB_RECOVERY_FILE_DEST和LOG_ARCHIVE_DEST和LOG_ARCHIVE_DEST_n
查看>>
【Xamarin挖墙脚系列:Xamarin.Android的API设计准则】
查看>>
JProgressBar的一个框架
查看>>
HDOJ/HDU 1062 Text Reverse(字符串翻转~)
查看>>
基于Macaca的混合H5应用UI自动化入门
查看>>
[转]scite文本编辑器的说明
查看>>
阿里云ECS CentOs7.3下搭建LAMP环境(Apache2.4 + Mysql5.7 + PHP5.6 + Laravel5.2)
查看>>
axure rp
查看>>
MySQL---数据库从入门走向大神系列(七)-Java访问数据库配置及简单使用方法execute...
查看>>
【框架】[Spring]纯Java方式实现AOP拦截-详解ThrowsAdvice异常通知
查看>>
微信小程序把玩(八)view组件
查看>>
一分钟发现一个引力透镜,天文学家使用神经网络探索宇宙
查看>>
微信,是怎么过来的(2010-2015)
查看>>
NGINX 添加MP4、FLV视频支持模块
查看>>
Apache Flink fault tolerance源码剖析(二)
查看>>
C#实现字符串按多个字符采用Split方法分割
查看>>
Linux学习--&gt;如何通过Shell脚本实现发送邮件通知功能?
查看>>