【发布时间】:2011-08-27 21:18:50
【问题描述】:
我有一个简单的 AS 类:
package Bubbles
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.display.LineScaleMode;
import flash.display.CapsStyle;
import flash.display.JointStyle;
public class Test extends Sprite
{
public function Test()
{
var g = graphics;
g.lineStyle(12, 0xEEEEFF, 1.0, true, LineScaleMode.NONE, CapsStyle.NONE, JointStyle.MITER);
g.drawRoundRect(0, 0, 60, 60, 10, 10);
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
}
private function onMouseDown(e:MouseEvent)
{
startDrag();
}
private function onMouseUp(e:MouseEvent)
{
stopDrag();
}
}
}
在Event.ADDED_TO_STAGE处理程序中添加用于作为舞台类的类集:
var t = new Test();
t.x = 20;
t.y = 20;
addChild(t);
现在,当我在浏览器或 Flash 播放器中启动应用程序并开始拖动对象时,我会看到图像上的轨迹:
Stage 上只有那个绿色矩形。如果我删除它,什么都不会改变。如果我将线条粗细更改为 6 条轨迹,则不会出现,在 7 或更高时它们会出现。您可以在此处查看 SWF:http://hg.n0rd.com/bubbles.html。如何让它正常工作?
更新: 如果我将该矩形形状更改为具有锐角的星形形状,即使在较低的厚度值上也会出现轨迹(当厚度 == 3 或更大时会出现轨迹)。
【问题讨论】:
标签: flash actionscript-3