些ToolTip类确实比之前的方便多了,收藏
///////////////////////////------------------本文来自http://www.klstudio.com/post/198.html
这次做公司一个项目,发现原来的那个ToolTip类
使用起来还是不方便,故我又重新写一个更方便更灵活的ToolTip类,现在把相关源代码也公布出来。
新ToolTip类
-
package
project.do93.pflip.view
-
{
-
-
import
flash.accessibility.AccessibilityProperties;
-
import
flash.display.*;
-
import
flash.events.*;
-
import
flash.geom.Point;
-
import
flash.text.*;
-
-
-
-
-
-
-
-
-
public
class
ToolTip
extends
Sprite {
-
private
static
var instance:ToolTip =
null
;
-
private
var label:TextField;
-
private
var area:DisplayObject;
-
public
function ToolTip() {
-
label =
new
TextField();
-
label.autoSize = TextFieldAutoSize.LEFT;
-
label.selectable =
false
;
-
label.multiline =
false
;
-
label.wordWrap =
false
;
-
label.defaultTextFormat =
new
TextFormat(
"宋体"
,
12
,
0x666666
);
-
label.text =
"提示信息"
;
-
label.x =
5
;
-
label.y =
2
;
-
addChild(label);
-
redraw();
-
visible =
false
;
-
mouseEnabled = mouseChildren =
false
;
-
}
-
-
private
function redraw() {
-
var w:Number =
10
+ label.width;
-
var h:Number =
4
+ label.height;
-
this
.graphics.clear();
-
this
.graphics.beginFill(
0x000000
,
0.4
);
-
this
.graphics.drawRoundRect(
3
,
3
, w, h,
5
,
5
);
-
this
.graphics.moveTo(
6
,
3
+ h);
-
this
.graphics.lineTo(
12
,
3
+ h);
-
this
.graphics.lineTo(
9
,
8
+ h);
-
this
.graphics.lineTo(
6
,
3
+ h);
-
this
.graphics.endFill();
-
this
.graphics.beginFill(
0xffffff
);
-
this
.graphics.drawRoundRect(
0
,
0
, w, h,
5
,
5
);
-
this
.graphics.moveTo(
3
, h);
-
this
.graphics.lineTo(
9
, h);
-
this
.graphics.lineTo(
6
,
5
+ h);
-
this
.graphics.lineTo(
3
, h);
-
this
.graphics.endFill();
-
}
-
-
public
static
function init(base:DisplayObjectContainer) {
-
if
(instance ==
null
) {
-
instance =
new
ToolTip();
-
base.addChild(instance);
-
}
-
}
-
-
public
static
function register(area:DisplayObject, message:String):
void
{
-
if
(instance !=
null
){
-
var prop:AccessibilityProperties =
new
AccessibilityProperties();
-
prop.description = message;
-
area.accessibilityProperties = prop;
-
area.addEventListener(MouseEvent.MOUSE_OVER, instance.handler);
-
}
-
}
-
-
public
static
function unregister(area:DisplayObject):
void
{
-
if
(instance !=
null
) {
-
area.removeEventListener(MouseEvent.MOUSE_OVER, instance.handler);
-
}
-
}
-
-
public
function show(area:DisplayObject):
void
{
-
this
.area = area;
-
this
.area.addEventListener(MouseEvent.MOUSE_OUT,
this
.handler);
-
this
.area.addEventListener(MouseEvent.MOUSE_MOVE,
this
.handler);
-
label.text = area.accessibilityProperties.description;
-
redraw();
-
}
-
-
-
public
function hide():
void
{
-
this
.area.removeEventListener(MouseEvent.MOUSE_OUT,
this
.handler);
-
this
.area.removeEventListener(MouseEvent.MOUSE_MOVE,
this
.handler);
-
this
.area =
null
;
-
visible =
false
;
-
}
-
-
public
function move(point:Point):
void
{
-
var lp:Point =
this
.parent.globalToLocal(point);
-
this
.x = lp.x -
6
;
-
this
.y = lp.y - label.height -
12
;
-
if
(!visible){
-
visible =
true
;
-
}
-
}
-
-
private
function handler(event:MouseEvent):
void
{
-
switch
(event.type) {
-
case
MouseEvent.MOUSE_OUT:
-
this
.hide();
-
break
;
-
case
MouseEvent.MOUSE_MOVE:
-
this
.move(
new
Point(event.stageX, event.stageY));
-
break
;
-
case
MouseEvent.MOUSE_OVER:
-
this
.show(event.target as DisplayObject);
-
this
.move(
new
Point(event.stageX, event.stageY))
-
break
;
-
}
-
}
-
-
}
-
}
调用实例
-
import
project.do93.pflip.view.ToolTip;
-
var base:Sprite =
new
Sprite();
-
addChild(base);
-
var sp:Sprite =
new
Sprite();
-
sp.mouseEnabled=sp.mouseChildren=
false
;
-
addChild(sp);
-
-
ToolTip.init(sp);
-
-
ToolTip.register(xxx_mc,
"http://www.klstudio.com"
);
-
ToolTip.register(btn1,
"我是按钮1"
);
-
ToolTip.register(btn2,
"我是按钮2"
);
演示效果
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="550" height="400" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0">
</object>
相关文件打包下载:http://www.klstudio.com/upload/tooltip.rar
分享到:
相关推荐
如果您希望从3.x渲染道具升级到4.x挂钩,请参阅我们的。 例子 基本用法() 用react-spring 动画外观() 使用Esc按钮关闭工具提示(源) 用作受控组件演示(源) 一旦安装了Demo,就将工具提示保留在DOM中(源...
Tooltip30版[易语言3.0以上版本].ec WF1.EC Tooltip31版[易语言3.0以上版本].ec taskbar.ec Trackbar.ec TTS.EC USER32.EC USUAL.EC VERSION.EC WBCZ.EC WBFH.EC SysResInfo.ec XP按钮1.1.ec winsys.ec xlAbout.ec ...
初学VB.net 上次发了一个VB.net 2008 做的计算器,这回对上次那个计算器进行了升级,增加了许多功能(有些功能其实对于计算器来说没有必要,但我只是为了学习VB.net,所以把常用的控件几乎都在这个计算器实现了一下!...
继上一版本(1.3.3.0)后再度升级,此次调整较大: 1)增加了设计时实时预览支持(允许关闭); 2)取消了控件尺寸设定的限制,允许验证码字符纵向排列; 3)增加了验证码字符字体集的设置,允许指定字体集; 4)增加了...
- foo_uie_panel_splitter插件升级为0.3.8a版,注意此后此插件必须使用此版或更高版本,除非特殊说明。 - foo_uie_wsh_panel_mod插件升级为1.1.9版,注意此后此插件必须使用1.1.8或更高版本,除非特殊说明。 - foo_...
安装ember install ember-tooltips从2.x升级参见文献资料使用文档如下:用法本文档适用于ember-tooltips的3.x版本。 有关2.x文档,请参阅 。 注意:以下文档是Ember Octane Edition约定的最新文档。 但是,也可以...
Tooltip30版[易语言3.0以上版本].ec Tooltip31版[易语言3.0以上版本].ec Trackbar.ec TTS.EC TWnet.CN.EC URL编码解码.ec USB.ec USER32.EC user32模块.EC user模块.EC USUAL.EC VERSION.EC Vista风格...
Tooltip31版[易语言3.0以上版本].ec Trackbar.ec transwin.ec TTS.EC TWnet.CN.EC URL 编码解码.ec USB.ec USER32.EC user32模块.EC user模块.EC USUAL.EC vcode.ec VERSION.EC ve 模块.ec Vista.ec vistaAERO模块....
Tooltip30版[易语言3.0以上版本].ec Tooltip31版[易语言3.0以上版本].ec Trackbar.ec transwin.ec TTS.EC TWnet.CN.EC URL 编码解码.ec USB.ec USER32.EC user32模块.EC user模块.EC USUAL.EC vcode.ec VERSION.EC ...
F:\ISO\=]易语言视频[=模块[=\易语言支持库\常用加解密支持库(支持静态)-2010-4-21升级.zip F:\ISO\=]易语言视频[=模块[=\易语言支持库\超级加解密支持库 (1.1#0版)静态库版.rar F:\ISO\=]易语言视频[=模块[=\...
·在trayItem中加入tooltip用于辅助信息提示 4. 版本变更: 版本升级为1.1.2 <br>20080618 2nd 1. Bug修正: 2. 功能添加: ·添加用户手册中文版V1.1 ·添加用户手册英文版V1.1 ...
trayicon1.zip 屏幕保护托盘图标(SDK版本)(27KB)<END><br>15,trayicon2.zip 屏幕保护托盘图标(MFC版本)(30KB)<END><br>16,cj60lib.zip MFC扩展界面库(VC6升级版)(936KB)<END><br>17,devstudio.zip ...
鼠标放在一个连接上,会显示图片(类似tooltip) 使用microsoft.web.ui.webcontrols的TabStrip与IFame组件,达到页的切换效果 HttpModule 实现 ASP.Net (*.aspx) 中文简繁体的自动转换,不用修改原有的任何代码,直接部署...
傲游3浏览器是国内唯一具有独立内核的桌面浏览器产品,首创双核浏览模式,在安全、快速的基础上,保证了对网银、网购类网站的兼容性。傲游3浏览器内置云端广告过滤系统,强大而易用,确保用户在浏览网页时不受任何...
2005-10-21 15:30 11317 3602 易语言模块大全\Tooltip31版[易语言3.0以上版本].ec 2005-10-21 15:30 2103 734 易语言模块大全\Trackbar.ec 2005-10-21 15:30 2619 971 易语言模块大全\TTS.EC 2005-11-04 18:12 94257...
2005-10-21 15:30 11317 3602 易语言模块大全\Tooltip31版[易语言3.0以上版本].ec 2005-10-21 15:30 2103 734 易语言模块大全\Trackbar.ec 2005-10-21 15:30 2619 971 易语言模块大全\TTS.EC 2005-11-04 18:12 94257...
2005-10-21 15:30 10725 3462 易语言模块大全\Tooltip30版[易语言3.0以上版本].ec 2005-10-21 15:30 11317 3602 易语言模块大全\Tooltip31版[易语言3.0以上版本].ec 2005-10-21 15:30 2103 734 易语言模块大全\...
3、享受 amis 的不断升级:amis 一直在提升细节交互体验,比如表格首行冻结、下拉框大数据下不卡顿等,之前的 JSON 配置完全不需要修改; 4、可以完全使用可视化页面编辑器 来制作页面:一般前端可视化编辑器只能...