首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

请问Flex中 组件的遮挡关系有关问题,确实太困惑了

2012-03-12 
请教Flex中 组件的遮挡关系问题,确实太困惑了。小弟最近在学习Flex开发,在研究在Canvas中放置多个组件以及

请教Flex中 组件的遮挡关系问题,确实太困惑了。
小弟最近在学习Flex开发,在研究在Canvas中放置多个组件以及他们的位置关系。从一些书中可以了解到,如果Canvas调用addChild()添加一幅图片,则添加的图片最被置为最顶层,现在我想改变Canvas中子组件的置顶关系,于是写出以下测试程序:

XML code
<?xml version="1.0"?><!-- Simple example to demonstrate the DateTimeAxis class. --><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  creationComplete="init()"><mx:Script>    <![CDATA[        internal function doclick():void        {            c.swapChildrenAt(0,1);        }    ]]></mx:Script> <mx:Canvas id="c" > <mx:Canvas backgroundColor="0xffffff" width="200" height="200" /> <mx:Canvas backgroundColor="0xff0000" width="100" height="100" /> </mx:Canvas> <mx:Button label="Button" click="doclick()"/></mx:Application>

  这个程序在c这个Canvas中画出了2个矩形,大的为白色,小的为红色。运行程序,可以通过点击button改变两个矩形位置关系。完全正常!
  下面做一点改动,在c这个Canvas中添加css效果,代码改变如下:
XML code
<?xml version="1.0"?><!-- Simple example to demonstrate the DateTimeAxis class. --><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  creationComplete="init()"><mx:Script>    <![CDATA[        internal function doclick():void        {            c.swapChildrenAt(0,1);        }    ]]></mx:Script> <mx:Canvas id="c" borderStyle="solid" > <mx:Canvas backgroundColor="0xffffff" width="200" height="200" /> <mx:Canvas backgroundColor="0xff0000" width="100" height="100" /> </mx:Canvas> <mx:Button label="Button" click="doclick()"/></mx:Application>

  运行程序,此时无反映。测试程序,如果将中间两个矩形去掉,只保留<mx:Canvas id="c" borderStyle="solid">
在doclick中设置断点,然后执行,查看c的值,发现c的numChildren值为1,太惊讶了,不是没有子组件吗?各位兄弟知道是怎么回事吗?

[解决办法]
搞不懂,纯up一下~~~
[解决办法]
好高级的问题,飘过……学习

热点排行