Apache flex 在Flex应用程序中显示元素边框?

Apache flex 在Flex应用程序中显示元素边框?,apache-flex,layout,Apache Flex,Layout,有没有办法在Flex应用程序的MXML元素周围设置边框?我正在描绘一些类似Firebug对HTML所做的事情,使用Inspect按钮查看并搜索Inspect以了解我的意思 这样做的原因是我在布局方面遇到了一些问题。就在我即将发布这篇文章时,我想到了在Flex Builder 3中使用mxml编辑器的设计视图。这或多或少是我想要的。还有其他建议吗?就在我即将发布这篇文章时,我想到了在Flex Builder 3中使用mxml编辑器的设计视图。这或多或少是我想要的。还有其他建议吗?您可以试试Kap

有没有办法在Flex应用程序的MXML元素周围设置边框?我正在描绘一些类似Firebug对HTML所做的事情,使用Inspect按钮查看并搜索Inspect以了解我的意思


这样做的原因是我在布局方面遇到了一些问题。

就在我即将发布这篇文章时,我想到了在Flex Builder 3中使用mxml编辑器的设计视图。这或多或少是我想要的。还有其他建议吗?

就在我即将发布这篇文章时,我想到了在Flex Builder 3中使用mxml编辑器的设计视图。这或多或少是我想要的。还有其他建议吗?

您可以试试Kap Inspect,它可能是Flex环境中最接近firebug的东西

请在此处查看演示:


从这里下载:

您可以尝试Kap Inspect,它可能是Flex环境中最接近firebug的东西

请在此处查看演示:


从这里下载:

我已经多次这样做了,以解决布局问题,但不是从MXML

在AS中,您可以在给定组件的图形层中绘制矩形

一种方法是为MXML组件creationComplete事件创建一个监听器,并在那里绘制矩形-您必须等待所有内容完成实例化和测量,以确保具有正确的维度

如果你的应用程序可以调整大小,你还需要创建一个调整大小的侦听器

松散地说,像这样的东西:

private function creationCompleteListener():void
{
    drawRectanglesAroundDisplayElements();
}

private function drawRectanglesAroundDisplayElements():void
{
    for each(var displayElement:DisplayObject in displayList)
    {
        var graphicsLayer:Graphics = displayElement.graphics;
        graphicsLayer.lineStyle(1,0xFF0000);
        graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
    }
}
这将贯穿所有显示对象,包括DisplayObjectContainer对象,并在其周围放置1px的红色边框

您可能更喜欢只突出显示某些类型的显示对象,如果是这样,您可以通过检查给定的显示对象的名称或数据类型进行过滤

有时我会为某些对象添加半透明背景的填充。我发现重叠的背景比相交的线条更容易看到,当然,这通常是不可行的

例如,如果希望为所有VBoxe提供一个透明的蓝色背景以及一个红色轮廓,则可以按如下方式修改上述内容:

private function drawRectanglesAroundDisplayElements():void
{
    for each(var displayElement:DisplayObject in displayList)
    {
        var graphicsLayer:Graphics = displayElement.graphics;

        if(displayElement is VBox)
        {
            graphicsLayer.beginFill(0x0000FF,.3);
            graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
            graphicsLayer.endFill();
        }

        graphicsLayer.lineStyle(1,0xFF0000);
        graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
    }
}

希望这能有所帮助。

我已经做过几次了,以解决布局问题,但不是从MXML

在AS中,您可以在给定组件的图形层中绘制矩形

一种方法是为MXML组件creationComplete事件创建一个监听器,并在那里绘制矩形-您必须等待所有内容完成实例化和测量,以确保具有正确的维度

如果你的应用程序可以调整大小,你还需要创建一个调整大小的侦听器

松散地说,像这样的东西:

private function creationCompleteListener():void
{
    drawRectanglesAroundDisplayElements();
}

private function drawRectanglesAroundDisplayElements():void
{
    for each(var displayElement:DisplayObject in displayList)
    {
        var graphicsLayer:Graphics = displayElement.graphics;
        graphicsLayer.lineStyle(1,0xFF0000);
        graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
    }
}
这将贯穿所有显示对象,包括DisplayObjectContainer对象,并在其周围放置1px的红色边框

您可能更喜欢只突出显示某些类型的显示对象,如果是这样,您可以通过检查给定的显示对象的名称或数据类型进行过滤

有时我会为某些对象添加半透明背景的填充。我发现重叠的背景比相交的线条更容易看到,当然,这通常是不可行的

例如,如果希望为所有VBoxe提供一个透明的蓝色背景以及一个红色轮廓,则可以按如下方式修改上述内容:

private function drawRectanglesAroundDisplayElements():void
{
    for each(var displayElement:DisplayObject in displayList)
    {
        var graphicsLayer:Graphics = displayElement.graphics;

        if(displayElement is VBox)
        {
            graphicsLayer.beginFill(0x0000FF,.3);
            graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
            graphicsLayer.endFill();
        }

        graphicsLayer.lineStyle(1,0xFF0000);
        graphicsLayer.drawRect(0,0,displayElement.width, displayElement.height);
    }
}

希望对您有所帮助。

是另一个让您导航UI和检查属性的工具。

是另一个让您导航UI和检查属性的工具。

您可以手动将它们放在那里,但设计视图非常全面,非常适合布置大多数(如果不是全部的话)属性,我不得不在源代码视图中修改一些位置属性x和y,因为出于某种原因,设计视图与实际运行的应用程序不匹配。但是设计视图确实有点帮助。你可以手动将它们放在那里,但是设计视图非常全面,非常适合布置大部分(如果不是全部的话)应用程序。我不得不在源代码视图中修改一些位置属性x和y,因为出于某种原因,设计视图与实际运行的应用程序不匹配。但是设计视图确实有点帮助。