useHandCursor当鼠标滑过其 buttonMode 属性设置为 true 的 Sprite 时是否显示手指形(手形光标)。...

本文介绍如何在Flash中使用Sprite元素并设置buttonMode和useHandCursor属性来实现不同鼠标光标效果。通过两个实例展示了当鼠标悬停时显示手形光标或箭头光标的设置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 Sprite 时是否显示手指形(手形光标)。 useHandCursor 属性的默认值是 true。 如果 useHandCursor 被设置为 true,则当鼠标滑过按钮 Sprite 时会显示用于按钮的手形光标。 如果 useHandCursorfalse,则将改用箭头指针。

可以随时更改 useHandCursor 属性;修改后的 Sprite 会立即具有新的光标外观。

下例创建两个 Sprite 并将二者的 buttonMode 属性设置为 true,但将其中一个的 useHandCursor 属性设置为 true,将另一个的此属性设置为 false。 当您编译和运行应用程序时,这两个 Sprite 都作为按钮进行响应(并且都包括在 Tab 键顺序中),但只有将 useHandCursor 设置为 true 的那个 Sprite 才使用手形光标:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import flash.display.Sprite;
import flash.events.MouseEvent;
  
var circle1:Sprite = new Sprite();
circle1.graphics.beginFill( 0xFFCC00 );
circle1.graphics.drawCircle( 40 , 40 , 40 );
circle1.buttonMode = true ;
circle1.useHandCursor = true ;
circle1.addEventListener(MouseEvent.CLICK, clicked);
  
var circle2:Sprite = new Sprite();
circle2.graphics.beginFill( 0xFFCC00 );
circle2.graphics.drawCircle( 120 , 40 , 40 );
circle2.buttonMode = true ;
circle2.useHandCursor = false ;
circle2.addEventListener(MouseEvent.CLICK, clicked);
  
function clicked(event:MouseEvent): void {
     trace ( "Click!" );
}
  
addChild(circle1);
addChild(circle2);

 





转载于:https://www.cnblogs.com/babyhhcsy/archive/2013/01/03/2842942.html

var clips:Array = [tu1, tu2, tu3, tu4, tu5, tu6, tu7, tu8, tu9]; // 存储所有影视剪辑的数组 var STATE_NORMAL:Number = 1; var STATE_OVER:Number = 2; var STATE_SELECTED:Number = 3; for (var i:Number = 0; i < clips.length; i++) { var clip:MovieClip = clips[i]; clip.gotoAndStop(STATE_NORMAL); clip.selected = false; // 添加一个selected属性并初始化为false clip.useHandCursor = true; clip.addEventListener(MouseEvent.ROLL_OVER, onRollOver); clip.addEventListener(MouseEvent.ROLL_OUT, onRollOut); clip.addEventListener(MouseEvent.CLICK, onClick); } function onRollOver(event:MouseEvent):void { trace("onRollOver called"); updateState(event.currentTarget as MovieClip, STATE_OVER); } function onRollOut(event:MouseEvent):void { trace("onRollOut called"); var clip:MovieClip = event.currentTarget as MovieClip; if (!clip.selected) { updateState(clip, STATE_NORMAL); } } function onClick(event:MouseEvent):void { trace("onClick called"); var clip:MovieClip = event.currentTarget as MovieClip; if (clip.selected) { return; } for (var j:Number = 0; j < clips.length; j++) { var c:MovieClip = clips[j]; c.selected = false; updateState(c, STATE_NORMAL); } clip.selected = true; updateState(clip, STATE_SELECTED); } function updateState(clip:MovieClip, state:Number):void { clip.gotoAndStop(state); if (state == STATE_SELECTED) { clip.mc_normal.visible = false; clip.mc_over.visible = false; clip.mc_selected.visible = true; } else if (state == STATE_OVER) { clip.mc_normal.visible = false; clip.mc_over.visible = true; clip.mc_selected.visible = false; } else { // STATE_NORMAL clip.mc_normal.visible = true; clip.mc_over.visible = false; clip.mc_selected.visible = false; } }改为as2语言
05-18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值