鼠标悬停电影中的所有按钮时播放声音
Play sound on rollover of all buttons in movie
我认为这是一件非常基本的事情,但我用谷歌搜索到了一个角落。我只想在每次悬停按钮类型元素时播放声音,而不管按钮的位置、生根、父项、名称、实例名称等。
声音文件与 class/linkage "sroll"(Sound Rollover)一起在库中,我使用以下方法播放所有其他声音:
MovieClip(root).audio_channel_c = MovieClip(root).snd8.play(0,1);
在我看来,我正在寻找类似以下内容的内容:
public button.eventlistener(MouseEvent.ROLL_OVER, function(){
MovieClip(root).audio_channel_c = MovieClip(root).snd10.play(0,1);
});
我在 AS3 中工作
经过更多的搜索,我发现了一种相当粗略的方法来做到这一点。听者在每个像素移动时拾取光标下的内容。如果光标下方的像素是对象 class 的 SimpleButton,则它确定鼠标是否仍在其已输入的按钮上移动。如果是新鲜的输入它的痕迹。
结果是每次光标进入按钮时都会有一条轨迹,但不会在您滚动到按钮上时出现。它还适用于整个舞台中每个按钮的每个实例。
import flash.events.MouseEvent;
import flash.display.SimpleButton;
import flash.utils.getQualifiedClassName;
function getClass(obj:Object):Class {
return Class(getDefinitionByName(getQualifiedClassName(obj)));
}
var last_button_to_mouse = "";
stage.addEventListener(MouseEvent.MOUSE_MOVE, handle_custom_event, true);
function handle_custom_event(e:Event):void
{
if(getQualifiedClassName(e.target)!="flash.display::SimpleButton"){
last_button_to_mouse = ""
}
if(getQualifiedClassName(e.target)=="flash.display::SimpleButton" && (e.target.name != last_button_to_mouse)){
last_button_to_mouse = e.target.name;
trace("Place your script here for when the mouse enters any button on the stage");
}
}
另一种选择,因为我是个彻头彻尾的白痴,不敢相信我没有在网上看到明确的答案,如果所有按钮都是一个核心按钮的实例(就像我的一样)当您单击了 "OVER" 框架,属性为您提供了应该发出什么声音的选项....
我认为这是一件非常基本的事情,但我用谷歌搜索到了一个角落。我只想在每次悬停按钮类型元素时播放声音,而不管按钮的位置、生根、父项、名称、实例名称等。
声音文件与 class/linkage "sroll"(Sound Rollover)一起在库中,我使用以下方法播放所有其他声音:
MovieClip(root).audio_channel_c = MovieClip(root).snd8.play(0,1);
在我看来,我正在寻找类似以下内容的内容:
public button.eventlistener(MouseEvent.ROLL_OVER, function(){
MovieClip(root).audio_channel_c = MovieClip(root).snd10.play(0,1);
});
我在 AS3 中工作
经过更多的搜索,我发现了一种相当粗略的方法来做到这一点。听者在每个像素移动时拾取光标下的内容。如果光标下方的像素是对象 class 的 SimpleButton,则它确定鼠标是否仍在其已输入的按钮上移动。如果是新鲜的输入它的痕迹。
结果是每次光标进入按钮时都会有一条轨迹,但不会在您滚动到按钮上时出现。它还适用于整个舞台中每个按钮的每个实例。
import flash.events.MouseEvent;
import flash.display.SimpleButton;
import flash.utils.getQualifiedClassName;
function getClass(obj:Object):Class {
return Class(getDefinitionByName(getQualifiedClassName(obj)));
}
var last_button_to_mouse = "";
stage.addEventListener(MouseEvent.MOUSE_MOVE, handle_custom_event, true);
function handle_custom_event(e:Event):void
{
if(getQualifiedClassName(e.target)!="flash.display::SimpleButton"){
last_button_to_mouse = ""
}
if(getQualifiedClassName(e.target)=="flash.display::SimpleButton" && (e.target.name != last_button_to_mouse)){
last_button_to_mouse = e.target.name;
trace("Place your script here for when the mouse enters any button on the stage");
}
}
另一种选择,因为我是个彻头彻尾的白痴,不敢相信我没有在网上看到明确的答案,如果所有按钮都是一个核心按钮的实例(就像我的一样)当您单击了 "OVER" 框架,属性为您提供了应该发出什么声音的选项....