• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax
您的位置:首页 > 平面设计 >flash > Flash AS教程:复制粘贴类

Flash AS教程:复制粘贴类

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-24

佚名 向大家分享了Flash AS教程:复制粘贴类,其中包含flash as教程,flash as3.0教程,flash as3.0视频教程,flash as2.0教程,flash as脚本教程等知识点,遇到此问题的同学们可以参考下
源码下载:flash_copy.rar
主要代码:

//定义公共函数。。。
class ClipBoard extends Object {
static var $contents:Object;
static var $operation:String;
function ClipBoard() {
}
//定义当选择剪切时的效果。。。
public static function cut(obj) {
obj._alpha = 50;
$contents = obj;
$operation = "cut";
}
//定义复制函数。。。
public static function copy(obj) {
$contents = obj;
$operation = "copy";
}
//定义删除函数。。。
public static function remove(obj) {
$contents = obj;
$operation = "remove";
$contents.removeMovieClip();
}
//定义顺时针旋转。。。
public static function rotation(obj) {
$contents = obj;
$operation = "rotation";
$contents._rotation = 45;
}
//定义逆时针旋转。。。
public static function rotation2(obj) {
$contents = obj;
$operation = "rotation2";
$contents._rotation -= 45;
}
//定义移动。。。
private static var xm:Number;
private static var ym:Number;
public static function movethis(obj) {
$contents = obj;
$operation = "movethis";
_root.onMouseDown = function() {
xm = _xmouse;
ym = _ymouse;
movethisit();
};
function movethisit() {
_root.onEnterFrame = function() {
$contents._x = (xm-$contents._x)/5;
$contents._y = (ym-$contents._y)/5;
if (Math.abs($contents._x-xm)<0.5) {
_root.onEnterFrame = undefined;
}
};
}
}
//定义刷新。。。
public static function refish() {
getURL("javascript:location.reload()");
}
//定义粘贴功能。。。
public static function paste() {
if ($operation == "cut") {
$contents._x = _root._xmouse;
$contents._y = _root._ymouse;
$contents._alpha = 100;
$contents = undefined;
$operation = "";
} else if ($operation == "copy") {
var newdepth = $contents._parent.getNextHighestDepth();
var newname = $contents._name newdepth;
$contents.duplicateMovieClip(newname, newdepth);
$contents._parent[newname]._x = _root._xmouse;
$contents._parent[newname]._y = _root._ymouse;
$contents._alpha = 100;
$contents._parent[newname]._alpha = 100;
} else if ($operation == "remove") {
var newdepth = $contents._parent.getNextHighestDepth();
var newname = $contents._name newdepth;
$contents.removeMovieClip("");
} else {
return;
}
}
public function isEmpty():Boolean {
if ($contents != undefined) {
return false;
} else {
return true;
}
}
public function handleMenuCommand(obj, item):Void {
switch (item.caption) {
case "剪切__X" :
cut(obj);
break;
case "复制__C" :
copy(obj);
break;
case "粘贴__P" :
paste();
break;
case "删除__D" :
remove(obj);
break;
case "刷新_F5" :
refish();
break;
case "往右旋转" :
rotation(obj);
break;
case "往左旋转" :
rotation2(obj);
break;
case "移动此球" :
movethis(obj);
break;
}
}
}

定义右键菜单:
_global.$clipboard = new ClipBoard();
function menuCallback(obj, menuObj) {
var empty:Boolean = _global.$clipboard.isEmpty();
menuObj.customItems = [];
// 如果对象为影片剪辑,而不是 _root
if ((obj instanceof MovieClip) && (obj != _level0)) {
menuObj.customItems.push(cutItem);
menuObj.customItems.push(copyItem);
menuObj.customItems.push(remove);
menuObj.customItems.push(refish);
menuObj.customItems.push(rotation);
menuObj.customItems.push(rotation2);
menuObj.customItems.push(movethis);
if (!empty) {
menuObj.customItems.push(pasteItem);
menuObj.customItems.push(refish);
}
} else if (obj == _level0 && !empty) {
menuObj.customItems.push(pasteItem);
menuObj.customItems.push(refish);
}
}
var myMenu = new ContextMenu(menuCallback);
myMenu.hideBuiltInItems();
var cutItem = new ContextMenuItem("剪切__X", _global.$clipboard.handleMenuCommand);
var copyItem = new ContextMenuItem("复制__C", _global.$clipboard.handleMenuCommand);
var pasteItem = new ContextMenuItem("粘贴__P", _global.$clipboard.handleMenuCommand);
var remove = new ContextMenuItem("删除__D", _global.$clipboard.handleMenuCommand);
var refish = new ContextMenuItem("刷新_F5", _global.$clipboard.handleMenuCommand);
var rotation = new ContextMenuItem("往右旋转", _global.$clipboard.handleMenuCommand);
var rotation2 = new ContextMenuItem("往左旋转", _global.$clipboard.handleMenuCommand);
var movethis = new ContextMenuItem("移动此球", _global.$clipboard.handleMenuCommand);
MovieClip.prototype.menu = myMenu;
this.menu = myMenu;
stop();
使用方法很简单,直接将制作好的MC拖入场景,然后在MC中加入如下代码:
on (release) {
stopDrag();
//结束行为
}
on (press) {
startDrag(this);
//结束行为
mx.behaviors.DepthControl.bringToFront(this);
//结束行为
}
注意下载的“ClipBoard.as”类文件,要放在SWF同级目录下。。。
</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Flash AS 入门教程 事件处理函数及画线语句
  • Flash AS 入门 as自定义函数
  • Flash AS 入门 鼠标跟随的应用实现
  • Flash AS 入门 duplicateMovieClip和removeMovieClip应用
  • Flash AS 入门到精通教程[图文]
  • Flash AS 制作创意的鼠标经过的网页导航
  • Flash AS解决中文mp3乱码
  • Flash AS教程:文本类对象知识总结
  • Flash as常用后缀及意义
  • Flash as教程:文字散射效果

相关文章

  • 2017-05-24Flash 3d效果精彩实例:制作旋转的三棱锥
  • 2017-05-24flash绘制一只神气的蝼步甲
  • 2017-05-24Flash制作跟随鼠标旋转的星星动画效果
  • 2017-05-24新手必看:flash入门知识详解
  • 2017-05-24ActionScript3.0中建立帧频计数器的方法
  • 2017-05-24flash怎么做一个正方形的移动动画?
  • 2017-05-24flash模拟三叶图的起始走向图
  • 2017-05-24如何在Flash cs3中将位图转换为矢量图
  • 2017-05-24Flash逐帧和补间制作小野人摇滚动画
  • 2017-05-24flash怎么制作一个简单的引导层动画?

文章分类

  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax

最近更新的内容

    • Flash AS 实例进阶 图片闪白切换效果实现代码
    • 用FLASH模拟平面运动机构
    • Flash制作文字翻转效果
    • Flash制作字母a到b的相互转换的gif动画效果图
    • Flash怎么制作扫光动画的效果?
    • Flash CS4教程:利用遮罩功能及添加代码来制作切换放大菜单效果
    • Flash cs3实例教程:运用图层简单实现传统数字动画效果
    • 在Flash中实现物体运动的三种方法介绍(AS)
    • flash基础教程:帧、关键帧、空白帧概念及区别介绍
    • Flash动画特效制作技巧:制作超酷的文字炸开动画效果

关于我们 - 联系我们 - 免责声明 - 网站地图

©2015-2018 All Rights Reserved. 微课江湖 版权所有