Flash MC对象的常用属性
[学习目标]:通过本讲学习掌握MC对象的常用属性,并且对比理解按钮和文本字段的属性 。
在上讲我们自己做了个日历,相信大家多看几遍as会掌握Date类对象的属性和方法的,从现在开始我们又回到了MC的控制,在flash里面用的最多的就是mc了,我们可以控制mc在时间轴的播放和停止、也可以复制生成一个新的MC,更可以改变一个MC的外观特点。在编辑状态,我们可以通过鼠标的操作来完成这些,比如大小、初始位置等,但要在as中控制,就要通过改变MC的属性来完成了。MC是MovieClip类的对象,按钮是Button 类的对象,还有前面我们用到的动态文本字段和输入文本字段都是 TextField 类的对象,他们的属性有许多是相似的,在这里我把他们放一起,供大家比较记忆理解。
对于MC的有关属性其实我们在前面已经接触到了,比如在介绍flash坐标体系时的_x,_y,还有透明度_alpha等。
全局属性就是影响整个动画,而不仅仅是动画片段。其主时间轴上的属性的值可以在任意处读出或者设置。
全局属性解释取值按钮MC文本框
_focusrect当按钮或影片剪辑具有键盘焦点时,是否在其周围显示黄色矩形。默认值为 truetrue或者false
MC属性控制例子:演示MC常用的几个属性
步骤:
1、新建flash文档
2、新建MC元件runman_mc,在这里你随便做个动画就可以了。
3、新建按钮元件space_btn,在点击插入关键桢,画个长方形。
4、回到主场景。
5、新建图层runman_mc,把MC元件runman_mc拖入,并且对应名称runman_mc。
6、新建图层txt,在上面8个静态文本框,分别为
7、新建图层d_txt,在上面拖入10个动态文本框,分别对应变量:x_txt,y_txt,alpha_txt,rotation_txt,xscale_txt,yscale_txt,width_txt,height_txt,visible_txt,name_txt。
8、新建图层btn,拖入8个按钮space_btn,分别给名称:alpha_btn,rotation_btn,scale_btn,width_btn,height_btn,visible_btn,name_btn,reset_btn
9、新建图层ActionScript,加as:
//保持runman_mc的位置和宽、高
X = runman_mc._x;
Y = runman_mc._y;
W = runman_mc._width;
H = runman_mc._height;
runman_mc.onEnterFrame = function() {
// 如果敲击左方向键,实例"runman_mc"左移10px
if (Key.isDown(Key.LEFT)) {
this._x -= 10;
}
// 如果敲击右方向键,实例"runman_mc"右移10px
if (Key.isDown(Key.RIGHT)) {
this._x += 10;
}
// 如果敲击上方向键,实例"runman_mc"上移10px
if (Key.isDown(Key.UP)) {
this._y -= 10;
}
// 如果敲击下方向键,实例"runman_mc"下移10px
if (Key.isDown(Key.DOWN)) {
this._y += 10;
}
// 不让实例"runman_mc"跑到按钮区里
if (this._x<=200) {
this._x = 200;
}
// 不让实例"runman_mc"从场景右面跑出去
if (this._x>=500+this._width) {
this._x = 500-this._width;
}
// 不让实例"runman_mc"从场景上面跑出去
if (this._y<=50-this._height) {
this._y = 50+this._height;
}
// 不让实例"runman_mc"从场景下面跑出去
if (this._y>=350+this._height) {
this._y = 350-this._height;
}
x_txt = runman_mc._x;
y_txt = runman_mc._y;
};
// 实例"runman_mc"完全透明时重置透明值为100
alpha_btn.onRelease = function() {
runman_mc._alpha -= 10;
if (runman_mc._alpha<0) {
runman_mc._alpha = 100;
}
alpha_txt = runman_mc._alpha;
};
// 在按一定角度进行旋转runman_mc实例
rotation_btn.onRelease = function() {
runman_mc._rotation += 30;
if (runman_mc._rotation>360) {
runman_mc._rotation = 0;
}
rotation_txt = runman_mc._rotation;
};
// 在水平和垂直方向上按一定比例进行缩放runman_mc实例
scale_btn.onRelease = function() {
runman_mc._xscale *= 0.5;
runman_mc._yscale *= 0.5;
if (runman_mc._width<10) {
runman_mc._xscale = 50;
runman_mc._yscale = 50;
}
xscale_txt = runman_mc._xscale;
yscale_txt = runman_mc._yscale;
};
//改变runman_mc的宽
width_btn.onRelease = function() {
runman_mc._width -= 10;
if (runman_mc._width<10) {
runman_mc._width = 200;
}
width_txt = runman_mc._width;
};
//改变runman_mc的高
height_btn.onRelease = function() {
runman_mc._height -= 10;
if (runman_mc._height<10) {
runman_mc._height = 300;
}
height_txt = runman_mc._height;
};
//改变runman_mc的可见性
visible_btn.onRelease = function() {
runman_mc._visible -= 1;
visible_txt = runman_mc._visible;
};
//取得runman_mc的_name
name_btn.onRelease = function() {
name_txt = runman_mc._name;
};
//恢复runman_mc的设置
reset_btn.onRelease = function() {
runman_mc._alpha = 100;
runman_mc._rotation = 0;
runman_mc._width = W;
runman_mc._height = H;
runman_mc._visible = 1;
runman_mc._x = X;
runman_mc._y = Y;
};
在这部分内容也是比较多的,大家看明白就可以,关键是比较着看,把共同的东西找出来,便于记忆,要求大家把下面几个常用的属性要记住:
透明:_alpha
宽高:_width、_height
鼠标位置:_xmouse、_ymouse
缩放:_xscale、_yscale
旋转:_rotation
坐标位置_x、_y
可见:_visible