Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 缩放UIComponent并不是缩放其子级_Flash_Actionscript 3_Flex3_Scale_Children - Fatal编程技术网

Flash 缩放UIComponent并不是缩放其子级

Flash 缩放UIComponent并不是缩放其子级,flash,actionscript-3,flex3,scale,children,Flash,Actionscript 3,Flex3,Scale,Children,我正在构建一个Flex应用程序,它基于一些选项/过滤器创建整洁的矢量图像。Flash/Flex/AS3相对较新,所以我边学边用 简言之: // I create a new UIComponent var myuic:UIComponent = new UIComponent(); // I then draw some vector graphics to it.. myuic_prev.graphics.beginFill(fgRGB, 1); myuic_prev.graphics.d

我正在构建一个Flex应用程序,它基于一些选项/过滤器创建整洁的矢量图像。Flash/Flex/AS3相对较新,所以我边学边用

简言之:

// I create a new UIComponent
var myuic:UIComponent = new UIComponent();

// I then draw some vector graphics to it.. 
myuic_prev.graphics.beginFill(fgRGB, 1);
myuic_prev.graphics.drawRect(xptr, yptr, pxls, pxls);
myuic_prev.graphics.beginFill(fgRGB, 1);
myuic_prev.graphics.drawCircle(cx,cy,cr);
myuic.graphics.beginFill(fgRGB, 1);
myuic.graphics.drawCircle(cx,cy,cr);
myuic_prev.graphics.endFill();
由于各种原因,生成的结果图像可能适合也可能不适合我的画布或显示容器,在本例中是具有固定宽度的VBOX。在这种情况下,我 需要缩放生成的UIComponent图像

我在Adobe文档中读到,调整UIComponent的比例将适当地缩放其子级。事实上,我看到很多关于如何防止这种情况的帖子

所以我试着。。。简单地说:

// Scale my UIC by changing the width
myuic_prev.width = 520;     
// Now make the two scale factors the same, this keeps proportions.
myuic_prev.scaleY = mxuic_prev.scaleX;
我发现这似乎可以缩放UIComponent本身,但不能缩放子组件或我在其中绘制的形状。这些形状现在超出了范围,或者从页面上剪下

我不明白什么?这些形状是否不被视为儿童?或者,我该如何让它工作。谢谢

UIComponent的width属性的工作方式与其父类Sprite不同,因为Flex组件具有不同的调整大小逻辑。在示例中,修改宽度或高度不会影响图形层。如果要缩放UIComponent和图形层,请尝试直接使用scaleX和scaleY属性

如果要按宽度缩放到520并保持纵横比,请在示例中尝试此操作:

component.scaleX = component.scaleY = 520 / component.width;

关于您建议的问题编辑:堆栈溢出中的标记将自动格式化带有语法突出显示的代码!每行缩进4个或更多空格。您不应该使用或标记。选择整个块并单击工具栏中的{}图标将自动为您添加前导空格。@CodyGray-Yep我看到了您的下一次编辑,并获得了要点。谢谢,没问题。这个建议的编辑功能的目标之一是为新用户提供培训。降价支持是很多人错过的,因为大多数论坛都不支持它。并不是每个人都像你一样学得快-