- 浏览: 65042 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
zero.peng:
能把源码发份给我吗,谢过了,964073580@qq.com
基于struts2和extjs的oa。。 -
windy0605:
lz 最近在做IM 源码提供参考下 谢了 hcydm_dl@1 ...
基于struts2和extjs的oa。。 -
织乐8:
toolTip没有显示出来嘛。
Flex实现画线(可拖拽、带箭头、可变色) -
dsjob:
学习学习学习学习学习学习学习学习学习学习
Flex实现画线(可拖拽、带箭头、可变色) -
benson0388:
benson0388@yahoo.com.cn
基于struts2和extjs的oa。。
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:flexlib="http://code.google.com/p/flexlib/" creationComplete="init()" fontSize="12"> <mx:Script> <![CDATA[ import flexlib.controls.tabBarClasses.SuperTab; import flexlib.events.SuperTabEvent; import mx.containers.dividedBoxClasses.BoxDivider; import mx.controls.Alert; import mx.controls.Button; import mx.core.EventPriority; import mx.events.FlexEvent; private var tabMenu:ContextMenu; private var close_cur:String="关闭当前页"; private var close_other:String="关闭其他页"; private var close_all:String="关闭所有页"; private var closeTabItem:ContextMenuItem; private var closeOthersItem:ContextMenuItem; private var closeAllItem:ContextMenuItem; [Embed(source="assets/home.png")] private var home_icon:Class; [Embed(source="assets/app.png")] private var app_icon:Class; private function init():void{ this.initCompents(); this.addTabNavigator(); //延后执行 callLater(addTabMenu); this.addGuiListeners(); } //初始化某些组件 private function initCompents():void{ tabMenu = new ContextMenu(); closeTabItem = new ContextMenuItem(close_cur); closeOthersItem = new ContextMenuItem(close_other); closeAllItem = new ContextMenuItem(close_all); tabMenu.hideBuiltInItems(); tabMenu.customItems.push(closeTabItem); tabMenu.customItems.push(closeOthersItem); tabMenu.customItems.push(closeAllItem); //处理中间分隔条 var bdriver:BoxDivider=this.hdbox.getDividerAt(0); bdriver.doubleClickEnabled=true; bdriver.addEventListener(MouseEvent.DOUBLE_CLICK, maxsizeHandler); } //添加几个tab页 private function addTabNavigator():void{ for(var i:uint=0;i<5;i++ ){ var vbox:VBox=new VBox(); vbox.label="Tab"+i; if(i==0){ vbox.label="首页"; vbox.icon=home_icon; }else vbox.icon=app_icon; tabs.addChild(vbox); } } //给tab页添加菜单 private function addTabMenu():void{ //设置首页不可关闭 this.tabs.setClosePolicyForTab(0,SuperTab.CLOSE_NEVER); for(var i:uint=0;i<tabs.getChildren().length;i++){ var tabBtn:Button=tabs.getTabAt(i); //添加双击tab页事件监听 tabBtn.addEventListener(MouseEvent.DOUBLE_CLICK,maxsizeHandler); tabBtn.contextMenu=tabMenu; } } private function addGuiListeners():void{ closeTabItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,tabRightMenuHandler); closeOthersItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,tabRightMenuHandler); closeAllItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,tabRightMenuHandler); tabMenu.addEventListener(ContextMenuEvent.MENU_SELECT,tabMenuHandler); this.tabs.addEventListener(SuperTabEvent.TAB_CLOSE,closeSuperTabHandler); } //取消双击tab页事件的监听 private function closeSuperTabHandler(ev:SuperTabEvent):void{ var tabIdx:Number = ev.tabIndex; var tabBtn:Button=tabs.getTabAt(tabIdx); tabBtn.removeEventListener(MouseEvent.DOUBLE_CLICK,maxsizeHandler); } //最大化 private function maxsizeHandler(ev:Event):void{ if(this.leftBox.percentWidth==0){ this.leftBox.percentWidth=20; this.rightBox.percentWidth=80; }else{ this.leftBox.percentWidth=0; this.rightBox.percentWidth=100; } } //处理tab右键关闭事件 private function tabRightMenuHandler(ev:ContextMenuEvent):void{ var cap:String = (ev.target as ContextMenuItem).caption; var home:* = this.tabs.getChildAt(0); var idx:int; switch(cap){ case close_cur: idx = this.tabs.selectedIndex; if(idx >= 0) this.tabs.removeChildAt(idx); break; case close_other: var selected:* = this.tabs.selectedChild; for each(var cnt:* in this.tabs.getChildren()){ if(cnt != selected && cnt != home){ this.tabs.removeChild(cnt); } } break; case close_all: // this.tabs.removeAllChildren(); for each(var tab:* in this.tabs.getChildren()){ if(tab != home) this.tabs.removeChild(tab); } break; } } private function tabMenuHandler(ev:ContextMenuEvent):void{ var tag:DisplayObject=ev.mouseTarget as DisplayObject; var idx:uint=this.tabs.selectedIndex; if(tag){ //下面这句非常犀利,发送一个单击事件 tag.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); closeTabItem.visible = true; closeOthersItem.visible = true; closeAllItem.visible = true; if(idx==0) closeTabItem.enabled = false; else closeTabItem.enabled = true; if(this.tabs.numChildren==1 || (this.tabs.numChildren==2 && idx>0)) closeOthersItem.enabled = false; else closeOthersItem.enabled = true; if(this.tabs.numChildren==1 && idx==0) closeAllItem.enabled = false; else closeAllItem.enabled = true; return; } closeTabItem.visible = false; closeOthersItem.visible = false; closeAllItem.visible = false; } ]]> </mx:Script> <mx:VBox width="100%" height="100%"> <mx:Spacer height="20" /> <mx:HDividedBox id="hdbox" width="100%" height="80%" liveDragging="true"> <mx:VBox id="leftBox" width="20%" height="100%"> <mx:Tree width="100%" height="100%"/> </mx:VBox> <mx:VBox id="rightBox" width="80%" height="100%"> <flexlib:SuperTabNavigator id="tabs" width="100%" height="100%" creationPolicy="all" paddingTop="1"> </flexlib:SuperTabNavigator> </mx:VBox> </mx:HDividedBox> </mx:VBox> </mx:Application>
发表评论
-
Flex开门效果
2010-07-02 15:09 1182网上找的。。。。 -
Flex中字符串trim方法
2010-06-19 15:04 2386//去除左边空格 public st ... -
Flex实现多功能Mp3播放器
2010-06-07 18:59 1128功能描述 暂停/播放 停止 上一首 下一首 音量调 ... -
Flex进度条小例子
2010-06-05 15:24 2599效果图如下:自动根据值变化进度条的颜色。 ... -
Flex中的MVC框架---puremvc
2010-06-04 17:00 1025先上传个教程。 -
Flex dataGrid 自定义显示列
2010-05-27 19:09 1191效果图如下: ... -
Flex鼠标变手势状
2010-05-26 17:32 1195有时客户会提这样的需求,在某些地方点击时需要把鼠标变成手势形状 ... -
Flex总体框架的优化
2010-05-25 18:05 1203优化策略: 1、系统只有一个主应用程序Application ... -
关于Flex的垃圾回收和内存泄漏
2010-05-25 17:16 1854在Java中我们不必担心内 ... -
Flex动态加载类
2010-05-19 10:20 2442在Java中可以通过反射机制动态创建类,在Flex中同样可以根 ... -
Flex实现画线(可拖拽、带箭头、可变色)
2010-05-14 15:36 7378在前人的基础上改了改,不多说,看效果图,贴代码: ... -
Flex容器最大化
2010-05-12 10:20 1246若有左右布局的2个容器,左侧容器宽:20%,右侧容器宽:80% ... -
Flex中tree实现的种种细节
2010-05-07 15:50 2198需要解决的问题: 1、自定义节点icon图标 2、右键菜单 ... -
Flex 模块化 事件 国际化
2010-05-06 11:27 1365把最近的知识整理一下 Flex开发实现:模块化 ... -
Flex常用教程及库
2010-04-21 22:19 12991。google map 2。Cairngorm MV ...
相关推荐
flex TabNavigator tab倒置
flex3 tabnavigator一个很好的例子
Flex3 TabNavigator 可关闭tab简单实现
Flex4.6 带图标的TabNavigator的使用,这是个简单的列子供初学者学习一下。
Flex3 排版为竖着的TabNavigator实例。
NULL 博文链接:https://toeo.iteye.com/blog/644341
这是一个封装好的flex项目,可以直接运行,TestTabNavigator.mxml是运行主页。里面定义了TabNavigator控件选中与被选中的皮肤类,皮肤类可以自己进行更改,也可以设置颜色渐变等等。希望对大家有帮助。
主要介绍了Flex中TabNavigator如何设置Tabs样式有哪些思路,感兴趣的朋友可以看看下面的源码
NULL 博文链接:https://kisscjy.iteye.com/blog/574873
设置TabNavigator组件的标签头的自定义皮肤,可以设置样式等等,内容较少,只是提供一种自定义皮肤设置的思路
Flex中做得一个垂直button和一个含有垂直标签的TabNavigator
TabNavigator一个react-native 底部菜单
在FLEX中使用样式方法 2 一 .使用本地样式定义 2 二、使用外部样式表 3 三、使用内联样式 4 四、使用setStyle()方法 4 五、脚本方法 4 Application组件样式属性 5 panel组件样式属性 5 color文本颜色 6 TabNavigator...
编译和部署使用RSL的Flex应用程序 25.6节. 在Flex Builder调试中创建和监视表达式 25.7节. 在Flex Builder中安装Ant窗口 25.8节. 为自动通用任务创建一个Ant构建文件 25.9节. 使用mxmlc和Ant编译Flex应用程序 25.10...
LinkButton | Menu | MenuBar | PopUpButton | PopUpMenuButton | ProgressBar | TabNavigator ToggleButtonBar | Tree | VScrollBar 为了方便使用,将Spark组件单独剥离出来,使用方案如下:(只限于spark组件) ...
包含flex4panel 不修改皮肤的圆角标题栏,According 控件缓慢展开,NavigaotrContent加icon,TabNavigator Tab头圆角和垂直空隙为0的调节. 外部字体导入和使用,app存放cookie的路径和本地线程调用的示例代码.
在FLEX中使用样式方法 2 一 .使用本地样式定义 2 二、使用外部样式表 3 三、使用内联样式 4 四、使用setStyle()方法 4 五、脚本方法 4 Application组件样式属性 5 panel组件样式属性 5 color文本颜色 6 TabNavigator...
感觉比flexlib.swc的SuperTabNavigator更好用
RN_ViewPager StackNavigator加TabNavigator