如何使用actionscript确定是否按下了删除键?
addEventListener(KeyboardEvent.KEY_UP, onKeyUp);
...
function onKeyUp(event:KeyboardEvent):void
{
trace(event.keyCode);
}
Run Code Online (Sandbox Code Playgroud)
当按下delete,backspace,enter和其他命令键时,上面的代码不会产生任何值.但是,箭头键确实产生了值.
我想做以下事情:有一些物体(例如20个物体),每当我将鼠标移到其中任何一个物体上时,它会向上移动,每当我的鼠标离开时,它就会向下移动.
obj1.addEventListener(MouseEvent.MOUSE_OVER, moveMyself1);
obj1.addEventListener(MouseEvent.MOUSE_OUT, moveMyself2);
obj2.addEventListener(MouseEvent.MOUSE_OVER, moveMyself1);
obj2.addEventListener(MouseEvent.MOUSE_OUT, moveMyself2);
obj3.addEventListener(MouseEvent.MOUSE_OVER, moveMyself1);
obj3.addEventListener(MouseEvent.MOUSE_OUT, moveMyself2);
obj4.addEventListener(MouseEvent.MOUSE_OVER, moveMyself1);
obj4.addEventListener(MouseEvent.MOUSE_OUT, moveMyself2);
obj5.addEventListener(MouseEvent.MOUSE_OVER, moveMyself1);
obj5.addEventListener(MouseEvent.MOUSE_OUT, moveMyself2);
//and etc...
function moveMyself1(e:MouseEvent):void{
obj1.y -= 30;
}
function moveMyself2(e:MouseEvent):void{
obj1.y += 30;
}
Run Code Online (Sandbox Code Playgroud)
我不想为每个对象添加一个事件监听器,那么我将有40个方法!有没有办法编写静态方法,所以我可以用于所有对象?
我意识到obj正在上下移动太快.如果你试图将你的鼠标放在obj的底端,你会看到它快速向下跳跃.有什么方法可以控制obj的速度吗?
哈哈,我希望有一些用户可以将鼠标悬停在下面并发现宝藏的物体.用户也可以点击宝藏.我从游戏中得到了这个想法.用户将鼠标移开后,对象将落到同一位置.如果obj移动得那么快,用户就无法点击里面的宝藏.关于如何解决运动问题的任何想法?
- - - - - - - - - - - - - - - - 更新 - - - - - - - - - ---------------
var elements : Array = new Array();
var elements2 : Array = new Array();
for …Run Code Online (Sandbox Code Playgroud) 哇,这个真的很奇怪.
我有以下设置:
舞台上的两个文本字段,Arial normal和Arial粗体,都嵌入了.然后我有另一个文本字段,我设置如下:
tb.htmlText = "Test <b>Test</b>";
Run Code Online (Sandbox Code Playgroud)
出于某种原因,粗体文本不显示为粗体,而是显示为常规体重.我尝试使用[Embed]元标记在库中嵌入字体,甚至使用CSS强制使用fontFamily.奇怪的是,我可以使用Font.enumurateFonts并看到两种字体都是嵌入的,但是textfield拒绝在<b>标签内使用粗体版本.
我被告知这是Mac上的Flash CS4的问题,它可以在PC上运行.但是,我拒绝相信这种情况.当然,Adobe现在已经解决了这个问题吗?
任何帮助,将不胜感激.
我知道必须要从所有关键帧调整舞台上的物体,因为它可能是我经历过的最烦人的事情
我调整位图图像,然后当你播放动画片段时,当它到达另一个关键帧时,它会显示旧位置而不是新位置.如何更新舞台上的所有图像,包括所有关键帧?
为什么Flex SDK是免费的,Flash CS4不是?诀窍在哪里?
我正在尝试在Flash中创建参数均衡器.我一直在寻找一种方法来读取音频数据,并在Flash动态播放之前弄乱样本.在一个Sound对象中加载声音并使用Sound.extract()读取数据,处理它,然后播放第二个空的Sound对象并将数据写入其sampleData事件似乎是这样做的方法(请更正我如果我错了或有更好的方法).
有没有办法在Sound对象仍在加载声音文件时使用Sound.extract()?我不想在播放之前等待整个声音文件加载.不幸的是,每当我在Sound对象仍然加载时使用Sound.extract()时,它返回一个零长度的字节数组.
有没有办法在播放前等待足够的样本加载?我想,当Flash影片在声音文件仍在加载时通过所有加载的样本时,我会再次遇到同样的问题.
这是我的代码的简化版本.它到目前为止工作,但只有当我等待Sound对象触发Event.COMPLETE事件时.
var inputSound:Sound = new Sound();
inputSound.load("somefile.mp3");
inputSound.addEventListener(Event.COMPLETE, loadComplete);
var outputSound:Sound = new Sound();
outputSound.addEventListener(SampleDataEvent.SAMPLE_DATA, processSamples);
var sc:SoundChannel;
/*if I called ouputSound.play() right now, it wouldn't work.*/
function loadComplete(e:Event) : void
{
sc = outputSound.play();
}
function processSamples(e:SampleDataEvent) : void
{
var samples:ByteArray = new ByteArray();
var len:int = snd.extract(samples, 8192);
var sample:Number;
var i:int = 0;
trace(len.toString());
samples.position = 0;
//TODO: Sound Processing here
//The following code plays a sine wave over the input sound as …Run Code Online (Sandbox Code Playgroud) 是否有一个JSFL脚本来编译Flash IDE中所有打开的fla?
由于我无法控制的原因,我目前正在处理一系列具有数字框架标签的Flash文件.这会导致问题,因为在使用gotoAndPlay/gotoAndStop时,Flash似乎将字符串视为与整数相同.
截图:

例如,gotoAndPlay('96')实际上不会使用标签"96"转到帧,而是转到#96帧.
现在,似乎唯一的解决方案是手动找出每个标签所依赖的帧,所以不要使用gotoAndPlay('96')我会使用gotoAndPlay(718).显然,这将是繁琐的(有很多帧标签),如果任何编辑需要移动东西,它还需要更改帧数.
有任何想法吗?无论如何强制flash在我忽略的数字框架标签上得到和播放/停止?
对于这个 Flash AS3 问题,真的非常需要帮助。我目前正在创建一款类似于咖啡馆世界、farmville 等(社交游戏)的游戏。想知道当鼠标移动时如何使物体沿等距方向移动。例如,当我想要建造一座房子时,我单击房屋建造按钮,当我的鼠标移动时,我希望我的房子对象(存储在库中)与我的鼠标一起沿等距方向移动。为了让大家更好地了解我正在寻找的解决方案,请单击此链接查看草图:http://www.flickr.com/photos/58743938@N07/5497636770/
所以我想要这样的东西,只有当我的鼠标移动比原始鼠标位置多 20 个单位时,我的房屋项目才应该移动到下一个网格。
如果有任何不清楚的地方请向我澄清。多谢!:)