欧美日韩精品在线,国内精品久久久久久久久,一级毛片恃级毛片直播,清纯唯美亚洲综合欧美色

FLASH AS鼠標(biāo)拖拽與旋轉(zhuǎn)MC教程_Flash教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:Flash制作插按鈕動畫教程
Flash是制作二維動畫的一個常用軟件,小北的這個教程詳細(xì)的講述了非常實用的插按鈕方法~很實用的哦,希望能對大家有所幫助! 工具/原料 Flash CS3或以上 方法/步驟 1、打開Flash,新建一個文檔,或者打開自己做的動畫文件。(小北是打開自己做好的FL哦~)如圖所示: 2、在

 在網(wǎng)上看到某個游戲既要拖拽mc又要旋轉(zhuǎn)mc,拖拽用鼠標(biāo)事件實現(xiàn),而旋轉(zhuǎn)需要用shift+鼠標(biāo)click事件。總覺得太麻煩了。故而希望自己能找到一種只用鼠標(biāo)就能同時實現(xiàn)拖拽與旋轉(zhuǎn)功能的方法。

結(jié)果發(fā)現(xiàn)MOUSE_DOWN+MOUSE_UP竟然相當(dāng)于一次CLICK事件。即每次釋放鼠標(biāo)左鍵,停止拖拽時,mc會旋轉(zhuǎn)一次,而這個顯然不是預(yù)期的效果。

于是,開始明白了,那個程序員為什么要添加shift鍵的偵聽了。

可是,不用shift鍵就不能實現(xiàn)這種功能嗎?我開始考慮如何區(qū)分MOUSE_DOWN+MOUSE_UP與CLICK.。

方法一:設(shè)置時間間隔。時間不太好把握,pass掉。

方法二:用鼠標(biāo)的相對位置。倘若mc未移動則視為click事件。正解!

代碼如下: package{
import flash.display .*;
import flash.geom .Point;
import flash.events.*;

public class main extends Sprite{
private var mc:MC;
private var clickOffset:Point;
private var mouseLoc:Point;

public function main(){
mc=new MC();
addChild(mc);
mc.x=200;
mc.y=200;
mc.addEventListener(MouseEvent.CLICK ,rot);
mc.addEventListener(MouseEvent.MOUSE_DOWN,startdrag);
mc.addEventListener(Event.ENTER_FRAME. ,drag);
stage.addEventListener(MouseEvent.MOUSE_UP,stopdrag);
}
private function startdrag(e:MouseEvent ){
mouseLoc=new Point(e.stageX,e.stageY);
clickOffset=new Point(e.stageX-mc.x,e.stageY-mc.y);
}
private function drag(e:Event){
if(clickOffset==null) return;
mc.x=mouseX-clickOffset.x;
mc.y=mouseY-clickOffset.y;
}
private function stopdrag(e:MouseEvent ){
clickOffset=null;
}
private function rot(e:MouseEvent){
if(!mouseLoc.equals(new Point(e.stageX,e.stageY)))return;
mc.rotation+=30;

}
}
}

分享:Flash cs3仿真藝術(shù)設(shè)計1.15:全新的Flash界面教程
全新的界面:FLASH 已經(jīng)不再是一個簡單的web動畫工具,所有的意圖表明它試圖發(fā)展成自已的平臺。顯而易見的,flash界面已經(jīng)從它的前面版本有了引人注目的發(fā)展。你一眼就可以感覺到它保持了Adobe的整套工具欄。程序圖標(biāo)現(xiàn)在已被整合在一起了。 用戶界面眾多的明顯的新特

來源:模板無憂//所屬分類:Flash教程/更新時間:2015-03-02
相關(guān)Flash教程