亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? advancetabnavigator.as

?? 用Flex實現的一個關于減肥系統的web界面,內部沒有實際的業務邏輯,只是一個原形.
?? AS
字號:
package sjd.controls{
	
	import flash.events.MouseEvent;
	import flash.display.DisplayObject;
	
	import mx.core.DragSource;
	import mx.core.IUIComponent;
	import mx.containers.TabNavigator;
	import mx.controls.tabBarClasses.Tab;
	import mx.controls.Button;
	import mx.controls.TabBar;
	import mx.events.FlexEvent;
	import mx.events.DragEvent;
	import mx.managers.DragManager;
	//import sjd.managers.DragManager;
	import sjd.utils.Constant;

	/**
	 * @class AdvanceTabNavigator
	 * @brief A New TabNavigator with Drag/Drop Enabled and Close Button
	 * @author Jove
	 * @version 1.1
	 */
  	public class AdvanceTabNavigator extends TabNavigator	{
		
		protected var tabCloseButton:Button = new Button();
		protected var currentTab:Tab;
		
		private var _tabDragEnable:Boolean = false;
		private var _tabCloseEnable:Boolean = false;
		
		public function  set tabDragEnable(enable:Boolean):void{
			this._tabDragEnable = enable;
			this.callLater(enableTabDrag, [enable]);
		}
		
		public function  get tabDragEnable():Boolean{
			 return this._tabDragEnable;
		}
		
		public function  set tabCloseEnable(enable:Boolean):void{
			this._tabCloseEnable = enable;
			this.callLater(enableButton, [enable]);
		}
		
		public function  get tabCloseEnable():Boolean{
			 return this._tabCloseEnable;
		}
		
		public function AdvanceTabNavigator(){
			super();
			this.addEventListener(FlexEvent.CREATION_COMPLETE, buildButton);
		}
		
		protected function buildButton(enable:Boolean):void{
			tabCloseButton.width=10;
			tabCloseButton.height=10;
			tabCloseButton.toolTip = "close";
			tabCloseButton.focusEnabled=false;
			tabCloseButton.setStyle("upSkin", Constant.WINDOW_CLOSE_BUTTON_1);
			tabCloseButton.setStyle("overSkin", Constant.WINDOW_CLOSE_BUTTON_2);
			tabCloseButton.setStyle("downSkin", Constant.WINDOW_CLOSE_BUTTON_2);
			tabCloseButton.visible = false;
			//Creating a hand cursor over a component
			tabCloseButton.buttonMode = true;
			tabCloseButton.useHandCursor = true;
			tabCloseButton.mouseChildren = false;
			
			rawChildren.addChild(tabCloseButton);
		}
		
		protected function enableButton(enable:Boolean):void{
			if(tabCloseButton != null){
				if(enable){
					this.addEventListener(MouseEvent.MOUSE_OVER, addCloseButton);
					tabCloseButton.addEventListener(MouseEvent.CLICK, tabCloseButton_clickHandler);
				}else{
					this.removeEventListener(MouseEvent.MOUSE_OVER, addCloseButton);
					tabCloseButton.removeEventListener(MouseEvent.CLICK, tabCloseButton_clickHandler);
				}
			}
		}
		
		protected function enableTabDrag(enable:Boolean):void{
			if(tabBar != null){
				if(enable){
					this.addEventListener(MouseEvent.MOUSE_MOVE, moveTab);
					tabBar.addEventListener(DragEvent.DRAG_ENTER, doDragEnter);
					tabBar.addEventListener(DragEvent.DRAG_DROP, doDragDrop);
					tabBar.addEventListener(DragEvent.DRAG_OVER, doDragOver);
					tabBar.addEventListener(DragEvent.DRAG_EXIT, doDragExit);
				}else{
					this.removeEventListener(MouseEvent.MOUSE_MOVE, moveTab);
					tabBar.removeEventListener(DragEvent.DRAG_ENTER, doDragEnter);
					tabBar.removeEventListener(DragEvent.DRAG_DROP, doDragDrop);
					tabBar.removeEventListener(DragEvent.DRAG_OVER, doDragOver);
					tabBar.removeEventListener(DragEvent.DRAG_EXIT, doDragExit);
				}
			}
		}
		
		protected function addCloseButton(event:MouseEvent):void{
			if(event.target != currentTab && event.target != tabCloseButton ){
				tabCloseButton.visible = false;
			}
			
			if(event.target is Tab && !DragManager.isDragging){
				// From: m.maher 12/19/2006
                // we really need to see if this tab is a direct
                // disendent of this tabnavigator so that tabnavigators inside of
                // this object don't display the close behaiour
				for each (var childTab:Object in this.tabBar.getChildren()) {
					if(childTab == event.target) {
						currentTab= Tab(event.target);
						tabCloseButton.x = currentTab.x + currentTab.width - 14;
						tabCloseButton.y = currentTab.y + ( currentTab.height - 10 ) / 2;
						tabCloseButton.visible = true;
						break;                                          
					}
				}
				//currentTab= Tab(event.target);
				//tabCloseButton.x = currentTab.x + currentTab.width - 14;
				//tabCloseButton.y = currentTab.y + ( currentTab.height - 10 ) / 2;
				//tabCloseButton.visible = true;
			}
		}		
		
		protected function tabCloseButton_clickHandler(event:MouseEvent):void{
			removeChildAt(tabBar.getChildIndex(currentTab));
			tabCloseButton.visible = false;
 		}
 		
 		protected function moveTab(event:MouseEvent):void{
			if(event.target is Tab){
				var dragInitiator:Tab=Tab(event.target);
				var ds:DragSource = new DragSource();
				var tabProxy:Tab = new Tab();
				tabProxy.label = dragInitiator.label;
				DragManager.doDrag(dragInitiator, ds, event, tabProxy);
			}
 		}
 		
 		protected function doDragEnter(event:DragEvent):void {
        	if(tabBar.getChildIndex(DisplayObject(event.dragInitiator)) >= 0){
	        	var dropTarget:IUIComponent=IUIComponent(event.currentTarget);
	        	if(dropTarget == this.tabBar){
		        	DragManager.acceptDragDrop(dropTarget);
	        	}
        	}
        }
        
        protected function doDragOver(event:DragEvent):void {
        	if(tabBar.getChildIndex(DisplayObject(event.dragInitiator)) >= 0){
        		tabCloseButton.visible = false;
	        	var dragX:Number = tabBar.mouseX;
	        	var targetTabIndex:Number = -1;
	        	for(var i:Number = 0; i < tabBar.getChildren().length; i++){
	        		if(dragX < tabBar.getChildAt(i).x){
	        			targetTabIndex = i;
	        			tabBar.graphics.clear();
						tabBar.graphics.beginFill(0x000000);
						tabBar.graphics.lineStyle(0, 0x000000);
						tabBar.graphics.drawRect(
											tabBar.getChildAt(targetTabIndex).x - 2,
											2,
											1,
											tabBar.getChildAt(targetTabIndex).height - 3);
						tabBar.graphics.endFill();
	        			break;
	        		}
	        	}
	        	if(targetTabIndex < 0
        			&& dragX > tabBar.getChildAt(tabBar.getChildren().length - 1).x
        			&& dragX < tabBar.getChildAt(tabBar.getChildren().length - 1).x + tabBar.getChildAt(tabBar.getChildren().length - 1).width){
	        		targetTabIndex = tabBar.getChildren().length;
	        		tabBar.graphics.clear();
					tabBar.graphics.beginFill(0x000000);
					tabBar.graphics.lineStyle(0, 0x000000);
					tabBar.graphics.drawRect(
										tabBar.getChildAt(targetTabIndex - 1).x + tabBar.getChildAt(targetTabIndex - 1).width - 3,
										2,
										1,
										tabBar.getChildAt(targetTabIndex - 1).height - 3);
					tabBar.graphics.endFill();
	        	}
	        	if(targetTabIndex >= 0){
	        		event.dragSource.addData(targetTabIndex, Constant.TARGET_TAB_INDEX);
	        	}
        	}
        }
        
        protected function doDragDrop(event:DragEvent):void {
			if(tabBar.getChildIndex(DisplayObject(event.dragInitiator)) >= 0 && event.dragSource.hasFormat(Constant.TARGET_TAB_INDEX)){
	        	tabBar.graphics.clear();
				var sourceTabIndex:Number = tabBar.getChildIndex(DisplayObject(event.dragInitiator));
				var targetTabIndex:Number = Number(event.dragSource.dataForFormat(Constant.TARGET_TAB_INDEX));
				
				if(sourceTabIndex < targetTabIndex || targetTabIndex == tabBar.getChildren().length){
					targetTabIndex--;
				}
				if(sourceTabIndex == targetTabIndex){
					return;
				}
				
				var sourceTab:DisplayObject = this.getChildAt(sourceTabIndex);
				this.removeChildAt(sourceTabIndex);
				this.addChildAt(sourceTab, targetTabIndex);
				this.selectedIndex = targetTabIndex;
				
			}
        }
        
        protected function doDragExit(event:DragEvent):void {
        	if(tabBar.getChildIndex(DisplayObject(event.dragInitiator)) >= 0){
				tabBar.graphics.clear();
        	}
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www.综合网.com| 欧美视频在线一区| 国产免费成人在线视频| 国产伦精品一区二区三区免费迷| 香蕉av福利精品导航| 伊人开心综合网| 亚洲一区二区精品久久av| 亚洲成人精品在线观看| 中文字幕一区日韩精品欧美| 欧美日韩国产123区| 成人av网站大全| 国产精品久久夜| 欧美精品日日鲁夜夜添| 99re66热这里只有精品3直播 | 亚洲成人高清在线| 欧美理论电影在线| 久久日韩粉嫩一区二区三区| 国产精品国模大尺度视频| 久久久久亚洲综合| 国产精品123区| 国产人成一区二区三区影院| 国产精品一区在线观看你懂的| 国产日韩欧美高清在线| 激情综合网av| 欧美激情综合在线| 欧美日韩国产经典色站一区二区三区| 日韩不卡手机在线v区| 国产农村妇女毛片精品久久麻豆| 国产高清不卡一区二区| 亚洲最大的成人av| 精品国产乱码久久久久久浪潮| 精品久久人人做人人爱| 天堂成人国产精品一区| 风间由美性色一区二区三区| 欧美日韩不卡一区二区| 韩国v欧美v亚洲v日本v| 亚洲制服丝袜在线| 26uuu亚洲| 欧日韩精品视频| 国产综合色产在线精品| 亚洲精品免费在线| 久久久精品2019中文字幕之3| 色婷婷av一区二区| 国产精品1024| 午夜亚洲国产au精品一区二区| 欧美一区二区女人| 在线精品观看国产| 国产美女av一区二区三区| 日韩精品电影在线| 亚洲色大成网站www久久九九| 精品国产123| 欧美少妇一区二区| 久久99久国产精品黄毛片色诱| 亚洲一二三区在线观看| 亚洲国产精品99久久久久久久久| 91精品国产色综合久久久蜜香臀| 成人激情av网| 国产呦萝稀缺另类资源| 亚洲大片免费看| 亚洲视频在线观看一区| 欧美日韩国产电影| 国产一区亚洲一区| 久久综合网色—综合色88| 蜜臀精品久久久久久蜜臀 | 日本乱码高清不卡字幕| 国产欧美一区二区三区网站 | 欧美国产激情二区三区 | 国产精品激情偷乱一区二区∴| 成人一级黄色片| 欧美国产日本韩| 97久久精品人人做人人爽50路| 国产精品美女久久久久av爽李琼| 91免费观看视频在线| 蜜桃精品视频在线| 国产精品欧美久久久久无广告| 欧美日韩国产另类一区| 国精产品一区一区三区mba桃花| 丁香一区二区三区| 91精品国产综合久久蜜臀| 日韩高清不卡在线| 国产丝袜欧美中文另类| 亚洲手机成人高清视频| 视频一区欧美精品| 91黄视频在线| 欧美亚洲综合久久| 91搞黄在线观看| 欧美偷拍一区二区| 99久久99久久精品免费观看| 韩国午夜理伦三级不卡影院| 国产精品一区二区久久不卡| 久久国产剧场电影| 丁香六月久久综合狠狠色| 国产成人99久久亚洲综合精品| 粉嫩aⅴ一区二区三区四区| 成人中文字幕电影| 国产成人免费av在线| 丁香啪啪综合成人亚洲小说| 波多野结衣精品在线| 欧美人妖巨大在线| 在线播放/欧美激情| 久久久久9999亚洲精品| 国产日韩亚洲欧美综合| 国内久久精品视频| 亚洲综合在线电影| 亚洲精品国产无天堂网2021| 日本美女一区二区三区| 激情综合网av| 日本韩国欧美一区| 欧美乱熟臀69xxxxxx| 久久夜色精品国产噜噜av| 久久精品一区二区三区不卡 | 在线精品视频一区二区三四 | 成人免费av在线| 日本韩国精品一区二区在线观看| 欧美色精品天天在线观看视频| 6080yy午夜一二三区久久| 日韩久久久久久| 欧美精品一区二区三| 国产精品午夜在线| 一区二区三区蜜桃| 久久99精品国产| 99国产精品久久久久| 欧美不卡在线视频| 一级特黄大欧美久久久| 毛片一区二区三区| 成人高清免费在线播放| 欧美日韩国产一级二级| 中文字幕+乱码+中文字幕一区| 亚洲国产毛片aaaaa无费看| 丝袜美腿亚洲一区二区图片| 成人三级在线视频| 欧美午夜寂寞影院| 日韩伦理电影网| 精品一区中文字幕| 欧美日韩国产免费一区二区| 国产亚洲精品bt天堂精选| 日韩综合在线视频| 91在线观看美女| 久久久99免费| 日本va欧美va欧美va精品| 91免费观看视频在线| 精品免费视频一区二区| 午夜日韩在线观看| 9l国产精品久久久久麻豆| 制服丝袜在线91| 一区二区三区中文字幕精品精品 | 亚洲一区二区精品视频| 日韩欧美国产综合| 亚洲欧美一区二区视频| 全国精品久久少妇| 欧美精品色综合| 亚洲精品一卡二卡| www.av精品| 久久精品视频网| 国产又黄又大久久| 欧美一区二区三区四区五区| 亚洲午夜免费福利视频| 91天堂素人约啪| 亚洲天堂a在线| 国产二区国产一区在线观看| 精品少妇一区二区三区日产乱码| 亚洲综合色网站| 欧美午夜视频网站| 亚洲视频一二三区| 色综合天天综合网天天狠天天| 欧美激情在线一区二区| 成人午夜免费av| 久久尤物电影视频在线观看| 久久99国产精品麻豆| 91精品国产福利| 亚洲欧美日韩系列| 色爱区综合激月婷婷| 精品成人免费观看| 韩日av一区二区| 日韩欧美久久一区| 午夜欧美大尺度福利影院在线看| 色综合久久久久网| 亚洲欧美另类久久久精品2019| 99久久婷婷国产| 国产午夜亚洲精品不卡| 蜜臀av一区二区三区| 色综合天天综合在线视频| 亚洲aaa精品| 555www色欧美视频| 国产精品91xxx| 国产三级久久久| 99久久精品99国产精品| 亚洲福利国产精品| 日韩午夜在线观看视频| 国产精品一区二区黑丝| 中文字幕高清一区| 91丨porny丨户外露出| 亚洲国产精品成人综合| 国产一区二区调教| 国产片一区二区| 91成人在线免费观看| 亚洲在线中文字幕| 91精品国产一区二区| 成人精品国产福利| 亚洲自拍偷拍九九九|