在 AS3 中似乎相当复杂,我尝试使用以下内容嵌入 (buttonXglow.png) 图像,这些图像作为成员变量放置在我的主类中,但它似乎对我不起作用。
[Embed(source='button1out.png')] public static var Button1Out:Class;
(这在 flash cs3 中不起作用)
似乎上面的 [Embed(...)] 语法属于 FlashDeveloper 的答案,对于我正在使用的 Flash CS3 选项是手动将图像导入库并进行设置,以便为创建一个类每个图像(有点耗时但有效)。
编辑:请注意,我遇到了“2022 类 %1 必须从 DisplayObject 继承才能链接到符号。”的问题。这似乎是 Flash CS3 中的一个错误,由于某种原因 Linkage 停止工作。我通过从库中删除图像并再次导入它们来解决这个问题。
使用“位图属性”窗口中的链接选项设置 ActionScript 的导出。设置类名,基类将设置为 flash.display.BitmapData。
在您的代码中,您可以像往常一样使用该类,例如:
var image:Bitmapdata=new Button1outClass(23, 23); // 请注意,我必须在构造函数中设置宽度和高度。
我使用以下代码生成带有位图的 Sprite:
button1Out=new Sprite();
button1Out.addChild(new Bitmap(new Button1outClass(23, 23)));
这引导我们
- 将按钮标记为选中,例如始终使用 (buttonXglow.png) 显示它。
- 能够禁用按钮(我正在使用 mouseEnabled = false; 目前关闭其行为,但我也想将外观更改为 (buttonXout.png) 图像)。
很容易通过指点解决
button.upState=button.overState;
(问题是我需要保存 upState 以便恢复它)
很简单:
button.upState=button1Out:
(这里的恢复也是一个问题,但因为我只会禁用按钮,所以再也不会启用它们,我很高兴去这里)