- 浏览: 43264 次
- 性别:
- 来自: 广州
最新评论
在刚开始学As3时,如果不知道按钮的事件如onPress的话,实在是件很没有头绪的事情。
在 As3.0中,所有的时间都已经被Event统一管理了.相对As2.0来说,按钮事件是在As3中变动最大的事件. 在As3.0中例如onPress等以前的按钮事件写法已经基本退出了历史的舞台.取而代之的是统一的管理和 使用(鼓掌....)
As3.0中,主要的按钮元素仍然是MC(flash.display.MovieClip)和Button (flash.display.SimpleButton),值得一提的是,MovieClip类继承自Sprite,而Simplebutton直接继承 自InteractiveObject.可以说,Simplebutton类是少有超脱于Sprite类控制之外的显示对象同学,恩, 我知道有有颗追逐自由的心......区别等下面说道了再继续说.
介绍了显示元素,那么改介绍事件对象了,他就是继承自Event的MouseEvent (flash.events.MouseEvent)了,其实践列表如下:
CLICK
DOUBLE_CLICK
MOUSE_DOWN
MOUSE_MOVE
MOUSE_OUT
MOUSE_OVER
MOUSE_UP
MOUSE_WHEEL
ROLL_OUT
ROLL_OVER
中里面的DOUBLE_CLICK就是江湖上传闻已久的双击事件了。不过我 觉得DOUBLE_CLICK目前还是棵菜,As3中加入了DOUBLE_CLICK却没有什么控制DOUBLE_CLICK与CLICK的好 办法,让我觉得有些草率.
话不多说了,我介绍下我写的一个实例:
分别有如下文 件:click_test.fla,main.as,mybtn.as,mymc.as.
[1b]click_test.fla[/1b]
定义Document Class为main.as,在库中创建一个按钮 (test_btn)和一个MC(test_mc),并分别命名为test_btn类和test_mc类,基类分别为mybtn.as和 mymc.as.
[1b]mybtn.as[/1b]
/*@
Author:frank
Site:www.2solo.cn
Date:2008.01.13
Info:场景上的实例类,继承SimpleButton
*/
package {
import flash.display.SimpleButton;
public class mybtn extends SimpleButton {
public function mybtn() {
this.doubleClickEnabled=true;
}
}
}[1b]mymc.as[/1b]
/*@
Author:frank
Site:www.2solo.cn
Date:2008.01.13
Info:场景上的实例类,继承MovieClip
*/
package {
import flash.display.MovieClip;
public class mymc extends MovieClip {
public function mymc() {
this.stop();
this.doubleClickEnabled=true;
this.buttonMode=true;
}
}
}需要说的是,MovieClip和SimpleButton两者都doubleClickEnabled,而MC中的是来自 Sprite,SimpleButton中的则直接来自InteractiveObject,瞧这关系,啧啧.当然,用起来是一样的, Sprite是继承自InteractiveObject的.
[1b]main.as[/1b]
/*@
Author:frank
Site:www.2solo.cn
Date:2008.01.13
Info:测试MovieClip与SimpleButton的按钮功能
main是场景控制类,
*/
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
public class main extends Sprite {
var clickBtnA=new test_mc;
var clickBtnB=new test_btn;
trace("Install");
public function main() {
addMC();
dispatchLis(clickBtnA);
dispatchLis(clickBtnB);
}
private function addMC() {
addChild(clickBtnA);
addChild(clickBtnB);
clickBtnA.x=20;
clickBtnA.y=20;
clickBtnB.x=20;
clickBtnB.y=100;
}
protected function dispatchLis(target):void {
target.addEventListener( MouseEvent.CLICK, btnClick);
target.addEventListener( MouseEvent.DOUBLE_CLICK ,btnDoubleClick);
target.addEventListener( MouseEvent.MOUSE_DOWN ,btnMd);
target.addEventListener( MouseEvent.MOUSE_OVER ,btnMo);
target.addEventListener( MouseEvent.MOUSE_UP ,btnMu);
target.addEventListener( MouseEvent.ROLL_OVER ,btnRover);
target.addEventListener( MouseEvent.ROLL_OUT ,btnRout);
}
protected function btnClick( evt:MouseEvent):void {
trace( "Click"+evt.currentTarget);
}
protected function btnDoubleClick( evt:MouseEvent):void {
trace( "DoubleClick"+evt.currentTarget);
}
protected function btnMd( evt:MouseEvent):void {
trace( "MouseDown"+evt.currentTarget);
}
protected function btnMu( evt:MouseEvent):void {
trace( "MouseUp"+evt.currentTarget);
}
protected function btnMo( evt:MouseEvent):void {
trace( "MouseOver"+evt.currentTarget);
}
protected function btnRover( evt:MouseEvent):void {
trace( "MouseRover"+evt.currentTarget);
}
protected function btnRout( evt:MouseEvent):void {
trace( "MouseRout"+evt.currentTarget);
}
}
}
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/2004.html
发表评论
-
flv制作工具大全
2010-04-10 09:50 658Collected links to Flash Vid ... -
FLV播放器汇总
2010-04-10 09:50 545http://www.dengjie.com/weblog/c ... -
FCS阅读笔记29 服务器日志
2010-04-10 09:49 547在管理FlashCom MX Server的时候,一件非常重要 ... -
FCS阅读笔记29 服务器日志
2010-04-10 09:49 700在管理FlashCom MX Server的时候,一件非常重要 ... -
Flash Media Server 起步(13)再说说SO....onSync(list)
2010-04-10 09:49 494很早以前写过so,当时 ... -
flash AS3爱好者不可缺少的Class Diagram( 类图表 )下载
2010-04-09 12:46 959很早前就在 RIS 上发现了一张 101.588cm x 71 ... -
flash AS3爱好者不可缺少的Class Diagram( 类图表 )下载
2010-04-09 12:45 895很早前就在 RIS 上发现了一张 101.588cm x 71 ... -
flash AS3.0 的第一步: Hello World
2010-04-09 12:45 1029应网友(他原是美工的)的要求,写一篇Flash CS3 的基 ... -
flash AS3.0 的第一步: Hello World
2010-04-09 12:45 965应网友(他原是美工的)的要求,写一篇Flash CS3 的基 ... -
as3游戏开发之打气球系列(二)
2010-04-09 12:45 538HI,经过了昨天疯狂的理 ... -
as3.0游戏开发之打气球系列(一)
2010-04-09 08:25 553好久没有写正经的文章 ... -
【as3】ActionScript 3.0体验试教学视频教程
2010-04-09 08:24 359很不错的视频教程 原文地址: http://blog.sina ... -
as3 使用sound类(翻译)-暂停和继续播放声音
2010-04-09 08:24 556[1b]问题十[/1b] 如何暂停声音,如何从暂停的地 ... -
ActionScript 3.0(as3)实现的A*寻路算法源代码下载
2010-04-09 08:24 1080曾经写过A*寻路算法的教程,但没有贴出任何代码,这次代码全都贴 ... -
指针随鼠标移动的flash卡通时钟
2010-04-08 07:49 504。先看下时钟效果: var fnum:Number = ... -
动画人物运动规律与节奏
2010-04-08 07:49 543本文转自:h ... -
Flash绘制美丽风景画之海滩
2010-04-08 07:49 441过前段时间学习,我们掌握了鼠绘的一些初步知识,今天我们来综合一 ... -
Flash制作卷轴水墨画展开动画效果
2010-04-08 07:48 633北京奥运会开幕式上那充满诗意的卷轴,以及它所呈现给我们的一幅幅 ... -
Flash鼠绘入门第十三课:绘制美丽春日飞燕
2010-04-08 07:48 490相传燕子于春天社日北 ... -
为AS2.0添砖加瓦-编写类扩展
2010-04-07 10:18 687[1b][序] [/1b]基于类的编程,使得我们可以更加轻松地 ...
相关推荐
AS3 用按钮按钮监听事件 点击按钮获取随机数 自己写的,请多多指正!
调用简单,纯代码实现按钮 var button01: SimpleButton = org.button.button.newButton({title: "按钮"});
根据图片绘制按钮的可选区域
flash 按钮 AS2.0 播放 倒放 回放 移上去,播放,离开,倒着播放。
按钮 按钮单击事件 */ /** 思路: 不进行缩放 1.初始化,控制面板背景,表示标题的动态文本,控制的按钮,生成提示当前图片的按钮。 2.读取XML,把里面的图片信息(图片地址和图片标题)获取进来,生成按钮 3.自动...
flash as3 导入外部图片(数量不定),循环播放(每6秒播放一张)并自动生成按钮进行选看控制
Flash as3 动态菜单
ButtonEvent.as ---------------------- button相关的事件 FLVEvent.as ---------------------- FLV相关的事件 LoadEvent.as ---------------------- load相关的事件 ListEvent.as ---------------------- list...
Flash as4_Samples学习AS3的一些非常经典的例子。
Flash AS教程之二 按钮的AS编写规则
我找了半天都没有找到AS3的 单个图片,复制成多个循环使用,然后,逐个删除。 现在我贡献下写法,希望可以帮助as3的新人。 源代码可以打开直接看,也可以用fb 导入工程看效果。 导入时,请将swc文件载入下,否则...
演示了C#和Flash的相互调用,VS2015和FlashCS3下调试成功,分为AS2.0和AS3.0版的调用 操作方法: 1,Winform传值给Flash:在【传输或接收到的值】文本框中填入任意字符,然后点 【将左框中数值送给Flash】按钮 2,...
Flash as2.0代码大全与Flash制作技巧 2009-08-04 12:46 Flash as2.0代码大全与Flash制作技巧 外部调用swf on (release) { loadMovieNum("service.swf", 1); } 外部调用数据 loadVariablesNum("about.txt", 0); ...
用AS3编写,点击不同的按钮加载不同的外部SWF文件,显示在固定尺寸的舞台上,同一时该只能加载一个外部文件,自动调整被加载文件的尺寸以适应容器大小。昨天上传那个不知道为什么见不到,再次上传并添加了部分容错...
众所周知,在网页中若想实现点击按钮自动复制到剪贴板中可以用以下代码实现: if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("text", "这是复制的文字"); } 但...
众所周知,在网页中若想实现点击按钮自动复制到剪贴板中可以用以下代码实现: if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("text", "这是复制的文字"); } 但...
//左右按钮移动幅度 private var v_targetMC:MovieClip; private var v_maskMC:MovieClip; private var v_Lbnt:MovieClip; private var v_Rbnt:MovieClip; private var automask:Boolean = false;//是否...
在某按钮点击后延时3秒执行我的命令 使用setTimeout完美解决
自定义按钮类,下载后,直接传参数调用就OK
flash as3.0实现简单计时器功能 as3.0类编程实现计时器功能 计时器源代码