flex复选框和下拉列表的几种用法整理

这几天接触了flex的很多控件,让我印象最深刻的就是控件的数据绑定几乎所有控件都可以这样做,基本上来说原理和html一样,我自己闲暇时间就整理了有关复选框可下拉的几种用法,下面就给大家分享一下。

1.复选框
这里我主要研究的该控件的全选,全不选,反选以及选中的操作,原理也就是也能用selected这个属性,true表示选中,只需遍历就能实现,此处我使用的是动态的复选框,页面代码如下


代码如下:

<mx:VBox top="50">
<mx:VBox>
<mx:Canvas width="100%" height="100%" >
<mx:Repeater id="rep" dataProvider="{array}">
<mx:CheckBox id="checkbox" label="{rep.currentItem.name}" x="{rep.currentItem.x}" data="{rep.currentItem.id}"/>
</mx:Repeater>
</mx:Canvas>
</mx:VBox>
<mx:VBox>
</mx:VBox>
</mx:VBox>
<s:Button x="90" y="81" label="全选" click="checkAll()"/>
<s:Button x="168" y="81" label="全不选" click="checkNotAll()"/>
<s:Button x="246" y="81" label="反选" click="reverse()"/>

刚看到可能比较陌生下面我把Array的定义贴出来


代码如下:

public var array:Array=new Array({"name":"语文","id":"chinese","x":"80"},{"name":"数学","id":"math","x":"160"},{"name":"英语","id":"english","x":"240"});

这种处理一般是用于动态的数据,静态的就直接写了,下面是我的ActionScript


代码如下:

//全选
private function checkAll():void{

for(var i:int=0;i<array.length;i++){
checkbox[i].selected=true;

all=all+checkbox[i].data+",";
}
Alert.show("选择了:"+all.substr(0,all.lastIndexOf(",")));
all="";
}
//全不选
private function checkNotAll():void{

for(var i:int=0;i<array.length;i++){
checkbox[i].selected=false;
}
}
//反选
private function reverse():void{

for(var i:int=0;i<array.length;i++){
if(checkbox[i].selected){
checkbox[i].selected=false;
}else{
checkbox[i].selected=true;
}

}
}

很简单吧,下面是下拉的使用,我的做法是先初始化下拉把数据绑定上去,之后根据需要修改下拉显示的内容,只需合理运用好下拉的selectedItem就可以修改下拉选中的值了


代码如下:

<mx:ComboBox id="subject" x="78" y="149" labelField="name" dataProvider="{array}"/>
下面是页面加载的初始化方法
<PRE class=java name="code">public function init(event:Event):void{
for(var i:int=0;i<array.length;i++){
if("数学"==array[i].name){

subject.selectedIndex=i;
checkbox[i].selected=true;
}
}

}</PRE><BR>
这里我顺便把数学的复选框弄成了默认选中<BR>
看起来代码有点乱,下面我把整个页面代码都贴出来<BR>
<PRE class=html name="code"><?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" initialize="init(event)">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.Alert;
public var all:String="";

public var array:Array=new Array({"name":"语文","id":"chinese","x":"80"},{"name":"数学","id":"math","x":"160"},{"name":"英语","id":"english","x":"240"});

public function init(event:Event):void{

for(var i:int=0;i<array.length;i++){
if("数学"==array[i].name){

subject.selectedIndex=i;
checkbox[i].selected=true;
}
}

}
//全选
private function checkAll():void{

for(var i:int=0;i<array.length;i++){
checkbox[i].selected=true;

all=all+checkbox[i].data+",";
}
Alert.show("选择了:"+all.substr(0,all.lastIndexOf(",")));
all="";
}
//全不选
private function checkNotAll():void{

for(var i:int=0;i<array.length;i++){
checkbox[i].selected=false;
}
}
//反选
private function reverse():void{

for(var i:int=0;i<array.length;i++){
if(checkbox[i].selected){
checkbox[i].selected=false;
}else{
checkbox[i].selected=true;
}

}
}
]]>
</fx:Script>
<mx:VBox top="50">
<mx:VBox>
<mx:Canvas width="100%" height="100%" >
<mx:Repeater id="rep" dataProvider="{array}">
<mx:CheckBox id="checkbox" label="{rep.currentItem.name}" x="{rep.currentItem.x}" data="{rep.currentItem.id}"/>
</mx:Repeater>
</mx:Canvas>
</mx:VBox>
<mx:VBox>
</mx:VBox>
</mx:VBox>
<s:Button x="90" y="81" label="全选" click="checkAll()"/>
<s:Button x="168" y="81" label="全不选" click="checkNotAll()"/>
<s:Button x="246" y="81" label="反选" click="reverse()"/>
<mx:ComboBox id="subject" x="78" y="149" labelField="name" dataProvider="{array}"/>

</s:Application>
</PRE><BR>
<BR>
<PRE></PRE>
<P></P>
<PRE></PRE>
<IMG alt="" src="http://img.blog.csdn.net/20130706214231250?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hlbndpbGwz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

(0)

相关推荐

  • flex复选框和下拉列表的几种用法整理

    这几天接触了flex的很多控件,让我印象最深刻的就是控件的数据绑定几乎所有控件都可以这样做,基本上来说原理和html一样,我自己闲暇时间就整理了有关复选框可下拉的几种用法,下面就给大家分享一下. 1.复选框 这里我主要研究的该控件的全选,全不选,反选以及选中的操作,原理也就是也能用selected这个属性,true表示选中,只需遍历就能实现,此处我使用的是动态的复选框,页面代码如下 复制代码 代码如下: <mx:VBox top="50"> <mx:VBox>

  • jquery 操作单选框,复选框,下拉列表实现代码

    1.复选框全选操作:其实说到底就是对Jquery 选择器的运用,点我查看Jquery选择器 html代码: 复制代码 代码如下: <form> 您爱好的运动是: <input type="checkbox" name="item" value="football"/> football <input type="checkbox" name="item" value="

  • 基于复选框demo(分享)

    本篇文章是关于复选框的,有2种形式:1.全选.反选由2个按钮实现:2.全选.反选由一个按钮实现. <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>复选框demo</title> <script src="../js/jquery-1.10.2.js" type="text/javascript"&g

  • jquery操作下拉列表、文本框、复选框、单选框集合(收藏)

    各种对下拉列表.文本框.复选框.单选框的jquery的相关操作.做为记录和收藏的最好方法. 遍历option和添加.移除optionfunction changeShipMethod(shipping){ var len = $("select[@name=ISHIPTYPE] option").length if(shipping.value != "CA"){  $("select[@name=ISHIPTYPE] option").each

  • Extjs 4.x 得到form CheckBox 复选框的值

    CheckBox(复选框)主要用来接收用户选择的选项 如图所示(请忽略UI的不好看): 该弹出窗口的主要代码如下: 复制代码 代码如下: var win = new Ext.Window({ modal : true, title : '确定要拒绝该表吗?', width : 500, plain : true, items : [fp] }); win.show(); 弹出的窗口是载体,items里面的[fp]是form表单的句柄. 具体定义如下: 复制代码 代码如下: var fp = Ex

  • 微信小程序 自定义复选框实现代码实例

    功能: 1.需要多选复选框,并且可以上拉滚动: 2.需要通过名称手写字母排序的,并且可以上拉滚动: 常规的小程序自带的原生picker无法满足我们的要求,因此一些特殊效果需要我们自定义来实现,废话不多说,我们直接看效果: index.wxml布局 <view class="container"> <view class='class bgFFF' bindtap='isDep'> <view class='class-text'> <text

  • vue基于element-ui的三级CheckBox复选框功能的实现代码

    最近vue项目需要用到三级CheckBox复选框,需要实现全选反选不确定三种状态.但是element-ui table只支持多选行,并不能支持三级及以上的多选,下面通过本文给大家讲解实现方法. 效果图预览: 首先是页面布局,当然也可已使用table,但是自己用flex布局后面更容易增删改查其他功能 <div class="deliverySetting-table"> <div class="table-head"> <div clas

  • 微信小程序获取复选框全选反选选中的值(实例代码)

    wxml文件 <view class="tr"> <view class="th"> <checkbox bindtap="selectall" />全选 </view> <view class="th">id</view> <view class="th">名称</view> </view> <

  • 自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码

    自定义实现 PyQt5 下拉复选框 ComboCheckBox 一.前言 由于最近的项目需要具有复选功能,但过多的复选框会影响界面布局和美观,因而想到把 PyQt5 的下拉列表和复选框结合起来,但在 PyQt5 中并没有这样的组件供我们使用,所以想要自己实现一个下拉复选框,主要就是继承 QComboBox 类,然后将复选框 QCheckBox 加入其中,并实现相应的功能. 最终实现的下拉复选框效果如下: 二.代码实现 1.主要方法 在 PyQt5 中,有几个主要的方法需要了解一下,方法名称和对应

  • 微信小程序自定义复选框

    本文实例为大家分享了微信小程序自定义复选框的具体代码,供大家参考,具体内容如下 1.效果 2.wxml <checkbox-group bindchange="checkboxChange" class="checkbox-group">      <view wx:for="{{checkboxArr}}" wx:key="index" class="padding-xs">   

随机推荐