包 | flash.display |
类 | public class SimpleButton |
继承 | SimpleButton InteractiveObject DisplayObject EventDispatcher Object |
子类 | FlexSimpleButton |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
在 Flash Professional 中,您可以在属性检查器中赋予按钮一个实例名称。SimpleButton 实例名称显示在影片浏览器中和“动作”面板的“插入目标路径”对话框中。在 Flash Professional 中创建了按钮的一个实例后,您可以使用 SimpleButton 类的方法和属性,通过 ActionScript 来操作按钮。
在 ActionScript 3.0 中,您使用 new SimpleButton()
构造函数来创建 SimpleButton 实例。
SimpleButton 类继承自 InteractiveObject 类。
从 Player 版本 11.2/AIR 版本 3.2 开始,SimpleButton
对象状态的 parent
属性将在查询时报告 null
。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
InteractiveObject 实例的当前辅助功能实现 (AccessibilityImplementation)。 | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。 | DisplayObject | ||
alpha : Number
表示指定对象的 Alpha 透明度值。 | DisplayObject | ||
blendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。 | DisplayObject | ||
blendShader : Shader [只写]
设置用于混合前景和背景的着色器。 | DisplayObject | ||
cacheAsBitmap : Boolean
如果设置为 true,则 Flash 运行时将缓存显示对象的内部位图表示形式。 | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
如果为非 null,则 Matrix 对象会定义显示对象在 cacheAsBitmap 设置为 true 时的呈现方式。 | DisplayObject | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
contextMenu : NativeMenu
指定与此对象相关联的上下文菜单。 | InteractiveObject | ||
doubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。 | InteractiveObject | ||
downState : DisplayObject
指定一个用作按钮“按下”状态—(当用户选择 hitTestState 对象时,按钮所处的状态)的可视对象的显示对象。 | SimpleButton | ||
enabled : Boolean
布尔值,指定按钮是否处于启用状态。 | SimpleButton | ||
filters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。 | DisplayObject | ||
focusRect : Object
指定此对象是否显示焦点矩形。 | InteractiveObject | ||
height : Number
表示显示对象的高度,以像素为单位。 | DisplayObject | ||
hitTestState : DisplayObject
指定一个用作按钮的点击测试对象的显示对象。 | SimpleButton | ||
loaderInfo : LoaderInfo [只读]
返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。 | DisplayObject | ||
mask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。 | DisplayObject | ||
metaData : Object
如果元数据是通过 PlaceObject4 标记与此 DisplayObject 的实例一起存储在 SWF 文件中的,则获取 DisplayObject 实例的元数据对象。 | DisplayObject | ||
mouseEnabled : Boolean
指定此对象是否接收鼠标或其他用户输入、消息。 | InteractiveObject | ||
mouseX : Number [只读]
表示此鼠标或用户输入设备位置的 x 坐标,以像素为单位。 | DisplayObject | ||
mouseY : Number [只读]
表示此鼠标或用户输入设备位置的 y 坐标,以像素为单位。 | DisplayObject | ||
name : String
表示 DisplayObject 的实例名称。 | DisplayObject | ||
needsSoftKeyboard : Boolean
指定当该 InteractiveObject 实例获得焦点时,是否显示虚拟键盘(显示在屏幕上的软键盘)。 | InteractiveObject | ||
opaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。 | DisplayObject | ||
overState : DisplayObject
指定一个用作按钮经过状态(当指针位于按钮上方时,按钮所处的状态)的可视对象的显示对象。 | SimpleButton | ||
parent : DisplayObjectContainer [只读]
表示包含此显示对象的 DisplayObjectContainer 对象。 | DisplayObject | ||
root : DisplayObject [只读]
对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。 | DisplayObject | ||
rotation : Number
表示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。 | DisplayObject | ||
rotationX : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。 | DisplayObject | ||
rotationY : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。 | DisplayObject | ||
rotationZ : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 z 轴旋转(以度为单位)。 | DisplayObject | ||
scale9Grid : Rectangle
当前有效的缩放网格。 | DisplayObject | ||
scaleX : Number
表示从注册点开始应用的对象的水平缩放比例(百分比)。 | DisplayObject | ||
scaleY : Number
表示从对象注册点开始应用的对象的垂直缩放比例(百分比)。 | DisplayObject | ||
scaleZ : Number
表示从对象的注册点开始应用的对象的深度缩放比例(百分比)。 | DisplayObject | ||
scrollRect : Rectangle
显示对象的滚动矩形范围。 | DisplayObject | ||
softKeyboard : String
控制软键盘的外观。 | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
定义当显示软键盘时应在屏幕上保留的区域(在 iOS 上不支持)。 | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
分配给此按钮的 SoundTransform 对象。 | SimpleButton | ||
stage : Stage [只读]
显示对象的舞台。 | DisplayObject | ||
tabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。 | InteractiveObject | ||
tabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。 | InteractiveObject | ||
trackAsMenu : Boolean
表示属于 SimpleButton 或 MovieClip 对象的其他显示对象是否可以接收用户输入释放事件。 | SimpleButton | ||
transform : flash.geom:Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。 | DisplayObject | ||
upState : DisplayObject
指定一个用作按钮弹起状态(当指针没有位于按钮上方时,按钮所处的状态)的可视对象的显示对象。 | SimpleButton | ||
useHandCursor : Boolean
布尔值,当设置为 true 时,表示指针滑过按钮上方时是否显示手形光标。 | SimpleButton | ||
visible : Boolean
显示对象是否可见。 | DisplayObject | ||
width : Number
表示显示对象的宽度,以像素为单位。 | DisplayObject | ||
x : Number
表示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。 | DisplayObject | ||
y : Number
表示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。 | DisplayObject | ||
z : Number
表示 DisplayObject 实例相对于 3D 父容器沿 z 轴的 z 坐标位置。 | DisplayObject |
方法 | 由以下参数定义 | ||
---|---|---|---|
SimpleButton(upState:DisplayObject = null, overState:DisplayObject = null, downState:DisplayObject = null, hitTestState:DisplayObject = null)
创建一个新的 SimpleButton 实例。 | SimpleButton | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。 | DisplayObject | ||
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。 | DisplayObject | ||
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。 | DisplayObject | ||
将二维点从舞台(全局)坐标转换为三维显示对象的(本地)坐标。 | DisplayObject | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
计算显示对象的边框,以确定它是否与 obj 显示对象的边框重叠或相交。 | DisplayObject | ||
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。 | DisplayObject | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
将三维显示对象的(本地)坐标的三维点转换为舞台(全局)坐标中的二维点。 | DisplayObject | ||
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。 | DisplayObject | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
显示虚拟键盘。 | InteractiveObject | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
downState | 属性 |
downState:DisplayObject
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
指定一个用作按钮“按下”状态(当用户选择 hitTestState
对象时,按钮所处的状态)的可视对象的显示对象。
实现
public function get downState():DisplayObject
public function set downState(value:DisplayObject):void
相关 API 元素
enabled | 属性 |
enabled:Boolean
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
布尔值,指定按钮是否处于启用状态。按钮被禁用时(enabled 属性设置为 false
),该按钮虽然可见,但不能被单击。默认值为 true
。如果想要禁用部分导航按钮,则此属性非常有用;例如,您可能希望禁用当前显示的页面上的某个按钮,以便禁止单击该按钮并禁止重新加载该页面。
注意:要防止按钮上的 mouseClicks 行为,请将 enabled
和 mouseEnabled
属性设置为 false
。
实现
public function get enabled():Boolean
public function set enabled(value:Boolean):void
hitTestState | 属性 |
hitTestState:DisplayObject
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
指定一个用作按钮的点击测试对象的显示对象。对于基本按钮,将 hitTestState
属性设置为与 overState
属性相同的显示对象。如果未设置 hitTestState
属性,则 SimpleButton 将处于非活动状态 — 不响应用户输入事件。
实现
public function get hitTestState():DisplayObject
public function set hitTestState(value:DisplayObject):void
相关 API 元素
overState | 属性 |
overState:DisplayObject
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
指定一个用作按钮经过状态(当指针位于按钮上方时,按钮所处的状态)的可视对象的显示对象。
实现
public function get overState():DisplayObject
public function set overState(value:DisplayObject):void
相关 API 元素
soundTransform | 属性 |
soundTransform:flash.media:SoundTransform
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9 |
分配给此按钮的 SoundTransform 对象。SoundTransform 对象包含用于设置音量、平移、左扬声器指定和右扬声器指定的属性。SoundTransform 对象适用于按钮的所有状态。SoundTransform 对象仅影响嵌入的声音。
实现
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
相关 API 元素
trackAsMenu | 属性 |
trackAsMenu:Boolean
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9 |
表示属于 SimpleButton 或 MovieClip 对象的其他显示对象是否可以接收用户输入释放事件。trackAsMenu
属性允许您创建菜单。可以对任何 SimpleButton 或 MovieClip 对象设置 trackAsMenu
属性。如果不存在 trackAsMenu
属性,则默认行为是 false
。
您可以随时更改 trackAsMenu
属性;修改后的按钮会立即具有新的行为。
实现
public function get trackAsMenu():Boolean
public function set trackAsMenu(value:Boolean):void
upState | 属性 |
upState:DisplayObject
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
指定一个用作按钮弹起状态(当指针没有位于按钮上方时,按钮所处的状态)的可视对象的显示对象。
实现
public function get upState():DisplayObject
public function set upState(value:DisplayObject):void
相关 API 元素
useHandCursor | 属性 |
SimpleButton | () | 构造函数 |
public function SimpleButton(upState:DisplayObject = null, overState:DisplayObject = null, downState:DisplayObject = null, hitTestState:DisplayObject = null)
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.0, Flash Player 9, Flash Lite 4 |
创建一个新的 SimpleButton 实例。可以将表示各种按钮状态的任意或全部显示对象都设置为构造函数中的参数。
参数upState:DisplayObject (default = null ) — SimpleButton 弹起状态的初始值。
| |
overState:DisplayObject (default = null ) — SimpleButton 经过状态的初始值。
| |
downState:DisplayObject (default = null ) — SimpleButton 按下状态的初始值。
| |
hitTestState:DisplayObject (default = null ) — SimpleButton hitTest 状态的初始值。
|
- 在
SimpleButtonExample()
构造函数中,创建一个名为button
的 SimpleButton 类型的新 CustomSimpleButton 对象,该对象调用CustomSimpleButton
构造函数方法。button
对象将添加到显示列表中。按钮的颜色和大小在以下步骤中确定。 - 在 CustomSimpleButton 类中,声明一些实例属性,以后将使用这些属性控制
button
处于不同状态时的大小和背景色(正常状态为黄色,鼠标滑过时为深黄色,鼠标按下时为浅蓝色)。在button
的所有状态下,可使用size
属性将正方形的大小设置为 80 像素。 - CustomSimpleButton 类的构造函数使用 ButtonDisplayState 类的四个实例设置
downState
、overState
、upState
、hitTestState
和useHandCursor
属性。 - 在 ButtonDisplayState 类中,构造函数设置正方形的大小和背景色的值,并调用
draw()
方法。 draw()
方法使用构造函数中设置的大小和背景色根据按钮的状态重绘正方形。
package { import flash.display.Sprite; public class SimpleButtonExample extends Sprite { public function SimpleButtonExample() { var button:CustomSimpleButton = new CustomSimpleButton(); addChild(button); } } } import flash.display.DisplayObject; import flash.display.Shape; import flash.display.SimpleButton; class CustomSimpleButton extends SimpleButton { private var upColor:uint = 0xFFCC00; private var overColor:uint = 0xCCFF00; private var downColor:uint = 0x00CCFF; private var size:uint = 80; public function CustomSimpleButton() { downState = new ButtonDisplayState(downColor, size); overState = new ButtonDisplayState(overColor, size); upState = new ButtonDisplayState(upColor, size); hitTestState = new ButtonDisplayState(upColor, size * 2); hitTestState.x = -(size / 4); hitTestState.y = hitTestState.x; useHandCursor = true; } } class ButtonDisplayState extends Shape { private var bgColor:uint; private var size:uint; public function ButtonDisplayState(bgColor:uint, size:uint) { this.bgColor = bgColor; this.size = size; draw(); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(0, 0, size, size); graphics.endFill(); } }
Tue Jun 12 2018, 11:04 AM Z