我有一个由我们的设计师创建的.fla文件,他创建了一组SimpleButtons,我已连接到视频播放器。现在,如果与之关联的视频正在播放,我需要将按钮的状态设置为“结束”。
按钮在图形上有点复杂,所以它不是我想用AS重新创建的东西。
在播放视频时,有没有办法设置myButton.upstate = myButton.overstate?我看到问题here似乎让我相信SimpleButton不太适合操纵。我已经看过使用AS3 here从头开始创建它的示例,但重建这些按钮将是一项艰巨的任务。
我可以做到这一点,但我不想在切线上除非没有其他方法可以做到这一点,因为它似乎是“似乎”它应该是简单的事情之一。
答案 0 :(得分:6)
如果您查看Flash API,则upState和overState(请注意此处的驼峰案例)是可读/写的。所以你可能在这里回答了你自己的问题:
myButton.upstate = myButton.overstate
给它一个测试,看它是否有效。只需确保将实际的upState保存在临时变量中,以便在视频无法播放时将其更改回来。
每当我遇到必须以编程方式更改Button状态的情况时,我只使用Flash IDE并为按钮的每个状态创建一个带有框架的MovieClip。我知道这不是你理想的解决方案,但它确实有效。
答案 1 :(得分:0)
根据我的说法,您应该只提供与该类的链接,并根据帧名[gotoAndStop(frameName)]创建一个在不同帧上跳转的泛型类。这将更加容易,类可以与N个按钮一起使用。你只需要给正确的帧提供帧名称。
答案 2 :(得分:0)
upState和overState方法 可以与IDE创建的SimpleButton一起使用。
var defaultUpState:DisplayObject = test_btn.upState;
var overUpState:DisplayObject = test_btn.overState;
test_btn.upState = overUpState;
下载此FLA以查看 - http://www.box.net/shared/ll0ho12iqb