看效果:
思路:
1.设一个pressed变量,为布尔型,初始为false;
2.鼠标移动就画线;
3.当pressed=true 时,鼠标移动时,可以画线;
4.当pressed=false时,鼠标移动时,不能画线;
5.最后再加入一些按钮来调整线条粗细和清空画板.
步骤一:
放入三个按扭,实例名分别为:
"clear_btn": 清除线条;
"str_btn": 加粗线条;
"thin_btn": 减细线条。
步骤二:
加入AS代码层:
linesize = 2;
//默认线条粗细为2
var pressed:Boolean=false
//pressed=true:开始画线; pressed=false:停止画线
str_btn.onRelease=function(){
if (linesize<5) {
linesize++;}}
//笔触加粗,粗度不能大于5
thin_btn.onRelease=function(){
if (linesize>1) {
linesize--;}}
//笔触减细,细度不能小于1
clear_btn.onRelease=function(){
_root.clear();}
//实现清屏功能
onMouseDown = function () {
pressed = true;
lineStyle(linesize, 0x000000, 100);
moveTo(_xmouse, _ymouse);
};
onMouseMove = function () {
if (pressed) {
lineTo(_xmouse, _ymouse);
}
};
onMouseUp = function () {
pressed = false;
};
FLASH充电1:AS画线,既可以在舞台上(_root),也可以在影片剪辑上(mc). 推荐画在mc中,这样可以方便、灵活地控制。
FLASH充电2: 关于 lineTo 及 moveTo
(1)先要设置线条用 lineStyle( 粗度 , 颜色 , 透明度)
(2)画笔的起点 moveTo( X坐标 , Y坐标 )
(3)画笔的终点 lineTo( X坐标 , Y坐标 )
(4)注重:执行完 lineTo 这个指令后,下一次画线的起点就是当前lineTo的位置,就不用再单独做一次moveTo指令了。
下面我们在mc中绘制一个矩形:
_root.createEmptyMovieClip("mc", 10);
mc._x = 30;
mc._y = 30;
mc.lineStyle(2, 0x0, 100);
mc.moveTo(0, 0);
mc.lineTo(100, 0);
mc.lineTo(100, 100);
mc.lineTo(0, 100);
mc.lineTo(0, 0);
FLASH充电3: 关于 curveTo ( 控制点X , 控制点Y , X坐标 , Y坐标 )下面我们在mc中绘制一条曲线:
_root.createEmptyMovieClip("mc", 10);
mc._x = 30;
mc._y = 30;
mc.lineStyle(2, 0x0, 100);
mc.moveTo(0, 0);
mc.curveTo(0, 200, 100, 200);
FLASH充电4: 颜色填充 beginFill(颜色号) 及 endFill()
注重:填充只能在封闭的线条内进行。下面为矩形填个绿色:
_root.createEmptyMovieClip("mc", 10);
mc._x = 30;
mc._y = 30;
mc.beginFill(0x00FF00);
mc.lineStyle(2, 0x0, 100);
mc.moveTo(0, 0);
mc.lineTo(100, 0);
mc.lineTo(100, 100);
mc.lineTo(0, 100);
mc.lineTo(0, 0);
mc.endFill();
FLASH充电5: 线条清除 clear()如:
_root.clear() 或 mc.clear()