flex中toolTip汇总
发布时间:2020-12-15 05:12:27 所属栏目:百科 来源:网络整理
导读:1.toolTip换行符? mx:Button id="btn1" toolTip="在工具条提示中#13; 使用换行符"/? 2.设定工具条提示的样式? mx:Style ToolTip { fontSize:19; color:#FF6699; } /mx:Style 3.设定工具提示宽度? mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
1.toolTip换行符?
<mx:Button id="btn1" toolTip="在工具条提示中 使用换行符"/>? 2.设定工具条提示的样式? <mx:Style> ToolTip { fontSize:19; color:#FF6699; } </mx:Style> 3.设定工具提示宽度?
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()"> <mx:Script> <![CDATA[ import mx.controls.ToolTip; public function init():void { ToolTip.maxWidth=100; } ]]> </mx:Script> 4. 使用工具条提示事件? toolTipCrate? toolTipEnd? toolTipHide? toolTipShow? toolTipShown? toolTipStart?
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()"> <mx:Script> <![CDATA[ import mx.events.ToolTipEvent; import flash.media.Sound; [Embed(source="demo.mp3")] private var beepSound:Class; private var myClip:Sound; public function init():void { TooTip.maxWidth=100; } public function playSoune():void { myClip.play(); } public function myListener(event:ToolTipEvent):void { playSoune(); } public function init():void { lbl.addEventListener(ToolTipEvent.TOOL_TIP_SHOW,myListener); myClip=new beepSound(); } ]]> </mx:Script> <mx:Label id="lbl" toolTip="demo ToolTip" text="mouse over here" /> 5. ToolTip Manager? ToolTip Manager 类用来管理toolTip属性,包含在mx.managers包中? 使用ToolTip Manager 延迟工具条显示的时间,在工具条上使用行为效果? 建立动态的工具条提示,使用自定义的工具条提示? 公共属性? ??? currentTarget : DisplayObject? 当前显示工具提示的 UIComponent;如果未显示工具提示,则为 null。 ToolTipManager? ??? currentToolTip : IToolTip? 当前可见的 ToolTip 对象;如果未显示 ToolTip 对象,则为 null。 ToolTipManager? ??? enabled : Boolean? 如果为 true,则当用户将鼠标指针移至组件上方时,ToolTipManager 会自动显示工具提示。 ToolTipManager? ??? hideDelay : Number? 自工具提示出现时起,Flex 要隐藏此提示前所需等待的时间量(以毫秒为单位)。 ToolTipManager? ??? hideEffect : IAbstractEffect? 隐藏工具提示时播放的效果;如果工具提示在消失时不应显示任何效果,则为 null。 ToolTipManager? ?? prototype : Object? 对类或函数对象的原型对象的引用。 Object? ??? scrubDelay : Number? 在 Flex 再次等待 showDelay 持续显示工具提示之前,用户在各控件间移动鼠标时可以花费的时间(以毫秒为单位)。 ToolTipManager? ??? showDelay : Number? 当用户将鼠标移至具有工具提示的组件上方时,Flex 等待 ToolTip 框出现所需的时间(以毫秒为单位)。 ToolTipManager? ??? showEffect : IAbstractEffect? 显示工具提示时播放的效果;如果工具提示在显示时不应显示任何效果,则为 null。 ToolTipManager? ??? toolTipClass : Class? 创建工具提示要用到的类。? 1.控制工具条的显示隐藏?
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()"> <mx:Script> <![CDATA[ import mx.managers.ToolTipManager; import mx.events.ToolTipEvent; import flash.media.Sound; [Embed(source="demo.mp3")] private var beepSound:Class; private var myClip:Sound; public function init():void { TooTip.maxWidth=100; ToolTipManager.showEffect=fadeIn; } ]]> </mx:Script> <mx:Label id="lbl" toolTip="demo ToolTip" text="mouse over here" /> <mx:Fade id="fadeIn" alphaFrom="0" alphaTo="1" duration="1000" /> <mx:Panel > <mx:Button id="btn" toolTip="demoasdf" /> </mx:Panel > 4.建立动态工具条体提示? ToolTipManager有两种方法,即:createToolTip()和destroyToolTip()? 建立一个工具条提示对象时,可以定义其属性,样式,事件和效果。? crateToolTip()方法结构? createToolTip(text:String,x:Number,y:Number,errorTipBorderStyle:String = null,context:IUIComponent = null):IToolTip? [] 使用指定的文本创建 ToolTip 类的实例,然后在舞台坐标中的指定位置显示此实例。 ToolTipManager? ??? destroyToolTip(toolTip:IToolTip):void? [] 销毁由 createToolTip() 方法创建的指定 ToolTip。? 例如:? <mx:Label id="lbl" toolTip="demo ToolTip" text="mouse over here" />? <mx:Button id="btn1" toolTip="填写的是{lbl.text}"/>? 5.建立用户自定义的工具条提示?
7.重写工具条皮肤? ToolTip皮肤存在mx.skins.ToolTipBorder.as文件中? 当然需要重写的时候就可以 ToolTipBorder 类继承的类就可以了? 例如:?
自定义皮肤 参见:http://demojava.iteye.com/blog/1175446? 自定义DateGird Item ToolTip ? 效果图:? 自定义ToolTip renderers.MenuToolTipRenderer as 实现接口?? IMenuItemRenderer,IDataRenderer,IListItemRenderer?
Application.xml? <?xml?version="1.0"?encoding="utf-8"?>?? 附件为源文件 1. 设置ToolTip风格(通过css来设置)? ?? ToolTip {?? ??? fontFamily: "Arial";?? ??? fontSize: 13;?? ??? fontStyle: "italic";?? ??? color: #FF6699;?? ??? backgroundColor: #33CC99;?? }? 当然这个可以通过css来动态设置例如:? StyleManager.getStyleDeclaration("ToolTip").setStyle("fontStyle","italic");?? 2. 错误提示errotTip? errorTip? {? border-style:"errorTipRight";? 其中border-style其对应的格式决定小三角的方位,可选值:[toolTip,errorTipRight,errorTipAbove,errorTipBelow]? <mx:TextInput x="85" y="118" text="021-阿萨德发送" errorString="输入有误!" />? 如果想修改源码,改变小三角的大小或者位置的话就需要自定义border-skin? ToolTip? border-skin:ClassReference("com.MyToolTipBorder");? 其中 com.MyToolTipBorder其中是一个继承了RectangularBorder的类,源码参见附件, ToolTip默认的skin-class路径在sdk? sdks3.0.0frameworksprojectsframeworksrcmxskinshaloToolTipBorder? 引入包的路径:import mx.skins.halo.ToolTipBorder;? 笔者发现 ToolTipBorder 的类对于4个方向支持不是很好,其中最右边的提示,也就是小三角在右边的没有,把源码修改了下(附件中有MyToolTipBorder)? 改变默认的错误提示的背景色设置4个方向的提示? 3. 使用ToolTipManager动态创建自定义的tooltip;? 使用ToolTipManager管理器类能够让你设置基本的ToolTip功能。比如显示延迟,以及控制是否显示ToolTip信息内容。? 你可以在程序中激活和停止使用ToolTips.? 可以使用enabled这个属性来激活或者停止使用ToolTips,如果停止使用,在鼠标移到到组件上方的时候就不会用ToolTips的框显示出来,不管那个组件是否设置了toolTip这个属性值? 设置ToolTipManager的常用属性介绍? ToolTipManager.enabled = true;//鼠标移入控件自动显示工具提示? ToolTipManager.showDelay = 0; //flex 等待tooltip出现的时间单位毫秒默认500? ToolTipManager. hideDelay=3000; //flex 隐藏tooltip所需的事件等待量 单位毫秒,默认500? ToolTipManager.showEffect= fadeIn; //显示tooltip的特效? ToolTipManager. hideEffect= fadeIn; //隐藏 tooltip的特效? <mx:Fade id="fadeIn" alphaFrom="0" alphaTo="1" duration="1000"/>? 4. 使用ToolTipManager createToolTip,destroyToolTip来动态创建自定义tooltip? 一般自定义tooltip都是在控件的? MouseEvent. ROLL_OVER(rollOver)? MouseEvent. MOUSE_OVER (mouSEOver)? 控制自定义tooltip的显示? MouseEvent. ROLL_OUT (rollOut)? MouseEvent. MOUSE_OUT (mouSEOut)? 控制自定义tooltip的隐藏? 现已rollOver结合ToolTipManager实现自定义tooltip? import?mx.managers.ToolTipManager;? 现已mxml实现该接口为例(简单),MyPanelToolTip.mxml? mx:Panel?xmlns:mx="http://www.adobe.com/2006/mxml"???? private function createCustomTip(title:String,body:String,event:ToolTipEvent):void? var pan:MyPanelToolTip = new MyPanelToolTip();? ?????????? pan.title = title;? ?????????? pan.text=body;? ?????????? event.toolTip = pan;? <mx:Button id="btn3" label="button" x="275.5" toolTip="demo" toolTipCreate="createCustomTip('自定义tooltip','该tooltip实现mx.core.IToolTip接口,注意是控件必须设置toolTip属性的值',event)" y="187"/>? 6. 自定义组件(继承UIComponent)结合mouSEOver事件形式??? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |