向flash.display.Loader添加边框

时间:2011-03-22 18:20:02

标签: actionscript-3 image adobe loader blackberry-playbook

我正在为Blackberry PlayBook开发一个ActionScript 3应用程序。

我正在使用flash.display.Loader加载图片。

我想用5px黑色边框显示该图像。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

嗯,这是一种方法。首先,将加载器放置在5像素的“背景”对象中。从左上角开始。

background = new Sprite();
addChild(background);

loader = new Loader();

loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
    loaderCompleteHandler);

loader.load(new URLRequest(url));

background.addChild(loader);

// place loader 5 px. from top left
loader.x = 5;
loader.y = 5;

然后根据图像的尺寸绘制背景(添加10像素。)。

private function loaderCompleteHandler(event:Event):void
{
    var w:Number = loader.contentLoaderInfo.width;
    var h:Number = loader.contentLoaderInfo.height;

    var g:Graphics = background.graphics;

    g.clear();

    // draw background
    g.beginFill(0x000000);
    g.drawRect(0, 0, w + 10, h + 10);
    g.endFill();
}

除了将加载器添加到后台Sprite对象之外,您还可以将其保存在现有的父容器中,只需将背景Sprite添加到该容器本身,但在加载器后面。 (在这种情况下,您可以使用Shape而不是Sprite作为背景)

您还可以在其现有父容器中的装入器对象周围绘制边框。请参阅flash.display.Graphics API。

答案 1 :(得分:0)

获取图像的宽度和高度,然后在图像后面(+ x宽度+ y高度)绘制一个bg。如果您要将子项添加到mc中,您可以使用flash.display库中的.graphic,或者只使用bitmapdata并添加到位图,前者更容易。