当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > Flash as入门(18):MC使用颜色

ActionScript
Flash as入门(4):AS常用语句
Flash as入门(5):学习AS数组
Flash as入门(6):文本与字符串⒒
Flash AS3鼠标事件使用详解
网页中flash的trace方法输出数据
Flash as入门(11):拖动与碰撞检测
AS教程:随机显示数字
Flash AS文本字段的透明度alpha变换
AS教程:对场景和MC添加鼠标监听
AIR设置:transparent和systemChrome
Flash AS3教程:flash.text.TextField
AS教程:理解变量作用域修饰符(modifier)
ActionScript3.0中类间传值问题解决
ActionScript3.0中类的定义以及类属性
Flash AS3教程:类属性的属性
ActionScript3.0教程:变量
ActionScript3.0教程:方法
ActionScript3.0教程:类的枚举
简单认识Flash as面向对象编程
Flash AS2教程:影片剪辑

ActionScript 中的 Flash as入门(18):MC使用颜色


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-01   浏览: 196 ::
收藏到网摘: n/a

本例继续讲解AS的基础知识,今天我们来学习Flash as入门(18):MC使用颜色,教程详细讲解了在AS中颜色的使用。

使用颜色

一、关于颜色系统:

我们常用的是RGB颜色系统。RGB分别是红绿蓝三种颜色的英文的第一个字母。这就是说RGB是由红绿蓝三种颜色组成的一个颜色系统,三种颜色不同比例的组合而形成了各种颜色。我们是用十六进制来表示颜色的值的,那么三种颜色的值为0-F。RGB系统由6位数组成,分别是红绿蓝三种颜色各两位,最小值为 00,最大值为FF,这样组合下来,共有1600多万种组合,每一种组合为一种颜色。

有了上面的介绍我们来看一下一些颜色值,分析一下它应该是什么颜色:

000000红绿蓝均为00,均为最小值,一个不恰当的比喻,什么都看不到,因为都是0,什么都看不到是什么情况呢?深夜你不开灯就什么都看不见,对黑色。
相反FFFFFF,均为最大值,与黑色相反那当然就是白色了。
FF0000,红色最大,其它两种色没有,那当然是红色了。
00FF00,只有绿色,当然就是绿色了。
0000FF蓝色,这次你比我还先说出来。
FFFF00 想一想,红色+绿色是什么色?黄色。
FF00FF:红色加蓝色呢?这个好想象出来:紫色。
00FFFF:绿色+蓝色:这个是什么色呢?蓝绿蓝绿的,晓得叫个啥颜色哦。

我们在使用这些颜色值时,需要在前面加上0x,比如红色:0xFF0000

还有一点颜色值中的字母不区分大小写,也就是说红色也可写为:0xff0000

二、为MC指定颜色值:

在以前的flash有一个color类可以为MC设置颜色,但在flash8以后不推荐使用用这个类,所以不介绍。现在推使用ColorTransform类来为MC设置颜色。同时也需要Transform类,所以首先应导入这两个类:
import flash.geom.ColorTransform;
import flash.geom.Transform;

类导入后都需要创建一个实例才能就用:
var 一个实例名称:ColorTransform = new ColorTransform();
var一个实例名称:Transform = new Transform(要应用颜色的影片剪辑);

接下来为ColorTransform实例设置颜色值:
ColorTransform实例.rgb=颜色值;
最后将Transform实例的ColorTransform属性设为ColorTransform实例:
Transform实例. ColorTransform = ColorTransform实例;

可以将上面的方法作为一个公式来就用。可能有点不是太清楚,还是用一个练习来熟悉一下吧:

这个练习我们画一朵花,然后将线条组合。将填充转换为MC,我们要改变的是填充色。实例名称为:h_mc.每点一次花,花将随机产生一种颜色。

效果:

代码:

import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
var trans:Transform = new Transform(h_mc);
trans.colorTransform = colorTrans;
h_mc.onRelease = function() {
colorTrans.rgb = random(0xffffff); //产生一个随机的颜色值
trans.colorTransform = colorTrans;
};