王咏刚,2005年4月
ColorPicker类里封装了HS色环和B亮度槽的MovieClip,这两种MovieClip又分别对应了ColorWheel和ColorTube两个类。它们的代码如下:
import wix.*;
class wix.ColorWheel extends MovieClip
{
private var pressed:Boolean;
private var pointer:MovieClip = null;
private var mask:MovieClip = null;
public function init(p:MovieClip, m:MovieClip) {
pointer = p;
mask = m;
}
public function ColorWheel() {
pressed = false;
this.onMouseDown = doPress;
this.onMouseUp = doRelease;
this.onMouseMove = doMove;
}
private function doPress(){
if (enabled) {
if (mask.hitTest(_root._xmouse, _root._ymouse, true)) {
pressed = true;
doMove();
}
}
}
private function doRelease() {
if (enabled)
pressed = false;
}
private function doMove() {
if (enabled) {
if (pressed && pointer && mask ) {
if (mask.hitTest(_root._xmouse, _root._ymouse, true)) {
pointer._x = _parent._xmouse;
pointer._y = _parent._ymouse;
_parent.updateHSB();
}
else {
var x1 = _parent._xmouse - this._x - this._width / 2;
var y1 = _parent._ymouse - this._y - this._height / 2;
var theta = ColorMan.getThetaByXY(x1, y1);
_parent.setHSB(theta, 100, null);
}
}
}
}
public function setBrightness(brightness:Number) {
if (enabled)
this._alpha = brightness;
}
}
import wix.ColorMan;
class wix.ColorTube extends MovieClip
{
private var pressed:Boolean;
private var pointer:MovieClip = null;
public function init(p:MovieClip) {
pointer = p;
}
public function ColorTube() {
pressed = false;
this.onMouseDown = doPress;
this.onMouseUp = doRelease;
this.onMouseMove = doMove;
}
private function doPress(){
if (enabled) {
if (this.hitTest(_root._xmouse, _root._ymouse, true) ||
pointer.hitTest(_root._xmouse, _root._ymouse, true)) {
pressed = true;
doMove();
}
}
}
private function doRelease() {
if (enabled)
pressed = false;
}
private function doMove() {
if (enabled) {
if (pressed && pointer) {
pointer._y = Math.min(Math.max(this._y + 2, _parent._ymouse),
this._y + this._height - 2);
_parent.updateHSB();
}
}
}
public function paint(h:Number, s:Number) {
if (enabled) {
var b, rgb:Number;
this.clear();
for(b = 0; b <= 100; b++)
{
rgb = ColorMan.hsb2rgbValue(h, s, b);
this.lineStyle(2, rgb, 100);
this.moveTo(2, 203 - b * 2);
this.lineTo(19, 203 - b * 2);
}
}
}
}
……未完待续……
分享到:
相关推荐
flash2004mx组件教程,已编译的 HTML 帮助文件,不只包括flash组件的教程,还有部分AS教程,实用小巧又方便查询.
Flash MX 2004 绿色软件站专用版
flashmx2004教程,手把手教你,一步一步操作flashmx2004
FlashMX2004lvse在使用Captivate时必须安装的一个环境如果使用该软件这个东东是必不可少的
Flash MX 2004.zip
Flash MX 2004 官方简体教程(PDF)
Flash是交互式矢量图和Web动画的标准。网页设计者使用Flash能创建漂亮的、可改变尺寸的、以及极其...Flash MX 2004中的编程特性有很大突破,令人有耳目一新的感觉,Developer甚至可以掉去Tool Bar绘图工具和Timeline
Macromedia Flash MX 2004 V7.01 简体中文版
一个使用flash MX 2004专业版制作的课件的模板,包含有按钮、选择题、连线题等元素。附带源码,可直接修改
ActionScript 2.0教程 Flash MX 2004 编程(AS2.0)教程
利用Flash MX Professional 2004构建功能丰富的Internet应用程序 熟悉Flash MX 2004界面 用ActionScript 2.0创建编程结构 使用内置可视的和非可视的Flash Player对象 创建自定义类和组件 使用Screen编程功能构建应用...
Flash MX 2004 入门与进阶教程
Macromedia Flash MX 2004 V7.01 简体
如果需要学习flasf的请看Flash MX 2004教程.rar
Flashmx2004-52z.com.zip这个是做动画的软件,免费的,永久使用,正版
Flash MX 2004 官方简体教程,相当经典。
Macromedia Flash MX 2004 简单快速的网站开发Macromedia Flash MX 2004 简单快速的网站开发
内容围绕编程概念、ActionScript 2.0语法、使用组件快速创建应用程序、Flash与服务器连接、提取及更新数据库等知识,配合实战范例演示,目的是让既有Flash MX使用者和其他对Flash有兴趣的传统编程人员,以最简单直接...
flash mx 2004游戏制作完全攻略.rar