给flex单列加<a>链接效果 (mx:DataGridColumn mx:AdvancedDataGridColumn)

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:com="com.*">

    <mx:Script>
    	<![CDATA[
    		import mx.events.ListEvent;
    		import mx.controls.Alert;
    		import mx.collections.ArrayCollection;
    		
    		private var array:ArrayCollection = new ArrayCollection([{id:"11",userName:"张三",deptName:"信息部"},
				                                                     {id:"12",userName:"李四",deptName:"信息部"}
					                                                ]);
					                                                
	       public function showData(event:MouseEvent):void{
	       	  Alert.show(dg.selectedItem.id + "被点击了");
	       	  
//	       	  var url:String = "test.swf";
//			  this.openWin(url,......,screen.width,screen.height);
	       }
    	]]>
    </mx:Script>
   <mx:DataGrid id="dg" width="98%" rowCount="10" dataProvider="{array}">
		<mx:columns>
			<mx:DataGridColumn dataField="id" headerText="编 号" width="80">
				<mx:itemRenderer>
					<mx:Component>
						 <mx:HBox verticalAlign="middle" horizontalGap="0">
						 	<mx:Script>
						 		<![CDATA[
						 			import mx.controls.Label;
						 			import mx.controls.LinkButton;
						 			
						 			override public  function set data(value:Object):void{
						 				 super.data = value;
						 				 if(value!=null){
						 				 	 this.removeAllChildren();
                                             if(value.id!=null){
												if(value.isTopOrg){
													 var button : LinkButton = new LinkButton();
			                                         button.setStyle("textDecoration","underline");
			                                         button.setStyle("fontWeight","bold");
			                                         button.setStyle("color","red");
			                                         button.toolTip = "点击";
			                                         button.width=60; 
			                                         button.label=value.id.toString();                                     
			                                         button.addEventListener(MouseEvent.CLICK,outerDocument.showData);
	                                         		 this.addChild(button);
												}else{
													 var button : LinkButton = new LinkButton();
			                                         button.setStyle("textDecoration","underline");
			                                         button.setStyle("fontWeight","bold");
			                                         button.setStyle("color","red");
			                                         button.toolTip = "点击";
			                                         button.width=60; 
			                                         button.label=value.id.toString();                                     
			                                         button.addEventListener(MouseEvent.CLICK,outerDocument.showData);
			                                         this.addChild(button);
												}
                                             }else{
                                             	 var label:Label = new Label;
                                                 label.setStyle("fontWeight","bold");
                                                 label.text = "0";
                                                 this.addChild(label);
                                             }
						 				 }
						 			 }
						 		]]>
						 	</mx:Script>
						 </mx:HBox>
					</mx:Component>
				</mx:itemRenderer>
			</mx:DataGridColumn>
			<mx:DataGridColumn dataField="userName" width="200" headerText="姓名"/>
			<mx:DataGridColumn dataField="deptName" headerText="部门"/>
		</mx:columns>
  </mx:DataGrid>
</mx:Application>


 

注:组件内访问外部函数,参数传递 button.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):void{outerDocument.showData(event,'100100')});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值