【发布时间】:2014-04-05 21:15:13
【问题描述】:
我在 FlashDevelop 中编写了一个程序,该程序将有几个不同的窗口,每个窗口的侧面都有按钮,允许用户从一个窗口转到下一个窗口。窗口不会同时打开 - 基本上只需要重新绘制背景并添加或删除功能。窗户侧面的按钮将是相同的。
现在一切正常,只是位图是从按钮的左上角而不是窗口的左上角绘制的。一个月前我问了这个问题,得到了与场景相关的答案。我一直很忙,没有太多时间来处理这个问题,但这似乎不起作用。如果我理解正确,场景只是时间线的不同部分。我没有使用 Flash,否则这很简单——goToAndPlay。
我在这里缺少什么?我应该使用 Stage 还是 Document 类?代码如下,此时我只是在绘制一个黑色矩形,但是当我绘制位图时,事情是一样的:
从主要:
songbutton = new SongButton;
addChild(songbutton);
songbutton.x = 680;
songbutton.y = 100;
来自 SongButton:
public class SongButton extends MusicPlay
{
public var songsYellow:Loader;
public var songsWhite:Loader;
public function SongButton(): void
{
songsYellow = new Loader();
songsYellow.load(new URLRequest("images/SongsYellow.jpg"));
songsWhite = new Loader();
songsWhite.load(new URLRequest("images/SongsWhite.jpg"));
addChild(songsWhite);
addEventListener(MouseEvent.MOUSE_OVER, mouseOver);
addEventListener(MouseEvent.MOUSE_OUT, mouseOut);
addEventListener(MouseEvent.MOUSE_UP, mouseUp);
}
private function mouseOver(e:MouseEvent):void {
addChild(songsYellow);
}
private function mouseOut(e:MouseEvent):void {
addChild(songsWhite);
}
private function mouseUp(e:MouseEvent):void {
SetMusicScreen();
}
}
来自 MusicPlay:
public function SetMusicScreen():void
{
graphics.beginFill(0x0);
graphics.drawRect(0, 0, 800, 550);
graphics.endFill();
}
【问题讨论】:
-
有十亿种方法可以制作按钮并将它们放在屏幕上,所以...您可以发布您用来执行此操作的代码吗?通常,所有内容都与其父容器的左上角对齐。因此,这将取决于您将按钮添加到什么——无论是舞台还是其他。
标签: actionscript-3 flash stage scene