Flash/Flex学习笔记(14):制作涂鸦板

简介: 关键点:知道如何画线就行了,代码不复杂,直接看吧(从同事一本书上抄的) var drawing:Boolean; Mouse.hide(); //隐藏默认的光标 stage.addEventListener(MouseEvent.

关键点知道如何画线就行了代码不复杂直接看吧从同事一本书上抄的

var drawing:Boolean;

Mouse.hide(); //隐藏默认的光标

stage.addEventListener(MouseEvent.MOUSE_MOVE,Stage_MouseMove);
stage.addEventListener(MouseEvent.MOUSE_DOWN,Stage_MouseDown);
stage.addEventListener(MouseEvent.MOUSE_UP,Stage_MouseUp);
stage.addEventListener(KeyboardEvent.KEY_DOWN,Stage_KeyDown);

function Stage_MouseDown(e:MouseEvent):void {
	this.graphics.moveTo(this.mouseX,this.mouseY);//设置划线的起点
	this.graphics.lineStyle(3,0x99cc00,100);//设置笔触大小及颜色
	drawing=true;
}


function Stage_MouseMove(e:MouseEvent):void {
	//铅笔鼠标跟随
	pen1.x=this.mouseX;
	pen1.y=this.mouseY;

	if (drawing) {
		this.graphics.lineTo(this.mouseX,this.mouseY);//关键代码就在这里
	}
	e.updateAfterEvent();
}

function Stage_MouseUp(e:MouseEvent):void {
	drawing=false;
}

function Stage_KeyDown(e:KeyboardEvent):void {
	if (e.keyCode==Keyboard.DELETE) { //注意这里虽然代码只写了Delete键但实际测试中发现如果按Ctrl + Delete组合键也能触发
		this.graphics.clear();
	}
}

 

 做为对比大家也可以参看:silverlight手写板/涂鸦/墨迹/InkPresenter示例程序

目录
相关文章
Flash/Flex学习笔记(54):迷你滚动条ScrollBar
先看最终效果: 整个swf最终不到4k,如果用系统的组件List来做的话,最终尺寸会接近30k ! (当然,核心代码是从网上收集到的:))   大致原理: 把要显示的对象上面加一层遮罩,然后根据滚动条的位置,上下移动显示对象。
954 0
|
内存技术
Flash/Flex学习笔记(57):实用技巧
布朗运动: varnumDots:uint=50; varfriction:Number=0.9; vardots:Array; varlife:uint=0; functioninit(){ graphics.
772 0
|
内存技术
Flash/Flex学习笔记(56):矩阵变换
先回顾一下Silvelright中的矩阵变换[转]WPF中的MatrixTransform,简单点讲:矩阵变换能改变对象的x,y坐标,x或y方向上的缩放,以及对象在x,y轴上的旋转(扭曲变形) 上面这个是WPF/Silverlight中的3*3变换矩阵,其中X,Y用于改变对象的坐标;M11,M22用于对象在x,y轴上的缩放;而M12,M21用于y轴,x轴上的扭曲。
869 0
|
索引 容器 内存技术
Flash/Flex学习笔记(52):使用TweenLite
TweenLite是第三方出品的专用于各种缓动动画的类库,其性能据说已经超过了Adobe官方的Tween. 从网上找到了一篇中文的说明文档:http://files.cnblogs.com/yjmyzz/tweenLite%e4%b8%ad%e6%96%87%e6%89%8b%e5%86%8c%e4%b8%8e%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.
946 0
|
Java 内存技术 Spring
Flash/Flex学习笔记(44):万有引力与粒子系统
万有引用公式: 其中G为万有引力常数   var numParticles:uint=50;//粒子总数 var G:Number=0.03;//万有引力常数 var particles:Array=new Array(numParticles); var bounce:Number=-0.
819 0
|
Java Spring 内存技术
Flash/Flex学习笔记(41):碰撞检测
碰撞检测基本上可能分为二类:对象与对象的碰撞检测、对象与点的碰撞检测 为了方便测试,先写一个box类(生成一个小矩形) package { import flash.display.Sprite; public class Box extends Sprite { ...
870 0
|
内存技术
Flash/Flex学习笔记(36):自己动手实现一个滑块控件(JimmySilder)
先看最终的演示: 滑块条的应用实在太广泛了:mp3播放器中声量的大小控制,视频播放时的画面亮度调节,阅读新闻时字体大小的实时调整,对象的大小互动控制... 分析: 1.任何一个滑块条控件的UI部分,基本上可以分为:背景滑块条 + 滑块按钮 二个部分 所以我分成了三部分: J...
886 0