作者kazenol (随便啦)
看板Flash
标题Re: [问题] 急问一个按钮的老问题
时间Sun Oct 14 00:52:42 2007
※ 引述《cjcat2266 (CJ Cat)》之铭言:
: ※ 引述《kazenol (随便啦)》之铭言:
: : 用这种写法会变成重复,按下去一次就trace所有的Movie name出来而
: : 不是只trace所按下的影片,如果加上getURL就变成一次开出所有的视窗@@
: : 不知道怎麽解决,请高手帮帮忙。
: 在AS2里面MC的onMouseUp event handler的侦测范围是整个场景
: 也就是说当滑鼠不在MC上的时候放开左键
: 所有MC的onMouseUp event handler还是会被呼叫
啊?!这麽烂?
我的目的是用CreateEmptyMovieClip去产生一组动态的影片,并且为它们附上
URL可供点选开启视窗,这样自然而然想到用onMouseUp,可是没想到居然是侦测
所有场景,这未免太奇怪的设定。手边没有flash,明天做试验看看
感谢您回答
: 这个时候里面还要再加一个hitTest来判断滑鼠位置
: myClip_mc.onMouseUp = function() {
: var xMouse:Number = this._parent._xmouse;
: var yMouse:Number = this._parent._ymouse;
: if (this.hitTest(xMouse, yMouse, true)){
: //code
: }
: };
: 你也可以直接用MC的onRelease event handler
: 这样的话就跟Button一样,有效区域只有在MC的图形范围
: 至於AS3的MouseEvent.MOUSE_DOWN event就只会在MC的图形范围被产生
: 所以不需要hitTest来判断滑鼠位置
: import flash.events.MouseEvent;
: myClip_mc.addEventListener(MouseEvent.MOUSE_DOWN, hit);
: function hit(e:MouseEvent){
: //code
: }
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.224.205
1F:推 etrexetrex:你可以用onPress 或onRelease 10/14 01:29
2F:→ etrexetrex:MC.onMouseUp 只要MC还存在 不管你点哪里都会执行 10/14 01:29
3F:推 jonathanmeow:烂?不会啊 每个事件都有每个事件的用途罢了.... 10/14 19:24