发新话题
打印

如何用getRGB()在一个MC里获得主场景里的一个MC的颜色值?

如何用getRGB()在一个MC里获得主场景里的一个MC的颜色值?

以下是主场景上的as,为影片剪辑topmc设置颜色。
var my_color:Color = new Color("topmc");
var myColorTransform:Object = {ra:0, rb:255, ga:0, gb:100, ba:0, bb:111, aa:100, ab:0};
my_color.setTransform(myColorTransform);
var co = my_color.getRGB().toString(16);//这一句是用来获得它的颜色值的,并用toString(16)把它转化为十六进制数了
trace(co)

主场景中还有一个实例名为mc的影片剪辑,我想在它里面获得topmc的颜色值,可是不知道应该如何写。
temp3 = _root.topmc.getRGB().toString(16);//这一句把topmc改在my_color也是错的。
trace("get from mc:"+temp3);


求助

附件

正确颜色.fla (48 KB)

2006-8-5 20:43, 下载次数: 27

正确颜色.swf (482 Bytes)

2006-8-5 20:43, 下载次数: 36

TOP

这样:

祯上:
var my_color:Color = new Color("topmc");
var myColorTransform:Object = {ra:0, rb:255, ga:0, gb:100, ba:0, bb:111, aa:100, ab:0};
my_color.setTransform(myColorTransform);
var co = my_color.getRGB();
trace(co);
btn1.onRelease = function() {
        var mc_color:Color = new Color("mc");
        mc_color.setRGB(co);
};
影片剪辑中的删掉。
注意:Flash Player 8 后不推荐使用 Color 类,而推荐使用 flash.geom.ColorTransform 类。
请F1
另外:
你的源文件中的mc没有实例名:(

[ 本帖最后由 fangfeijing 于 2006-8-5 21:58 编辑 ]

TOP

主场景mc无须命名,因为用不上它。因为是要变量temp3的值,在你说的那个mc中的第一帧写上代码:
var getmc_RGB:Color=new Color(_parent.topmc);
temp3 = getmc_RGB.getRGB().toString(16);
trace("get from mc:"+temp3);
就行了。

TOP

推荐3楼的方法

TOP

谢谢fangfeijing、xiaozhao00和zao!!

TOP

恩,很强悍.顶一个!~
爱博吧 ibio8.com 梦想——源于不断的追求。

TOP

发新话题