Event : 편지, 엽서 . . . .. . . 정보
포함하는 내용
- 말하는 사람
- 듣는 사람
- 내용
bird.addEventListener ( MouseEvent.CLICK, onClick );
function onClick ( e: MouseEvent ) : void
{
e.target // 보내는 이 ( 말하는 사람 )
e.currentTarget // 받는 이 ( 듣는이 ) ★★★★★★ 매우 중요 ★★★★★★
e.type // 이벤트 타입, 이벤트를 구분하는 것
.
.
.
등등 많이 있다
}
"( e: MouseEvent )" 관련된 정보들을 가지고 있다
박스를 누르면 이름을 호출하는 예제
/*
trace( red.name);
==> red_mc // 저장한 이름이 나온다
*/
import flash.display.MovieClip;
import flash.events.MouseEvent;
var red:MovieClip = red_mc;
var green:MovieClip = green_mc;
var blue:MovieClip = blue_mc;
trace(red.name);
red.addEventListener (MouseEvent.CLICK, onClick );
green.addEventListener (MouseEvent.CLICK, onClick );
blue.addEventListener (MouseEvent.CLICK, onClick );
function onClick ( e : MouseEvent ) :void
{
trace( e.currentTarget.name);
}
박스의 이벤트 타입을 호출하는 예제
import flash.display.MovieClip;
import flash.events.MouseEvent;
var blue: MovieClip = blue_mc;
blue.addEventListener( MouseEvent.ROLL_OVER, onBlue);
blue.addEventListener( MouseEvent.ROLL_OUT, onBlue);
blue.addEventListener( MouseEvent.CLICK, onBlue);
function onBlue ( e: MouseEvent ) : void
{
trace(e.type);
}
클릭한 객체의 이동,회전,스케일, 알파 예제
var red: MovieClip = red_mc;
var gree: MovieClip = Blue_mc;
var blue: MovieClip = green_mc;
red.addEventListener ( MouseEvent.CLICK, onClick);
blue.addEventListener ( MouseEvent.CLICK, onClick);
green.addEventListener ( MouseEvent.CLICK, onClick);
function onClick( e: MouseEvent ) : void
{
e.currentTarget.x = e.CurrentTaget.x + 10;
e.currentTarget.y = e.currentTarget.y + 10;
e.currentTarget.rotation = e.currentTarget.rotation + 10;
e.currentTarget.scaleX = e.currentTarget.scaleX + 0.1;
e.currentTarget.scaleY = e.currentTarget.scaleY + 0.1;
e.currentTarget.alpha = e.currentTarget.alpha - 0.1;
}
※ 원시데이터 타입
int. unit, Number, Boolean, String을 제외한 나머지 모든 변수타입은 Object이다.
※ object 특징
- new로 생성한다
- 대문자로 시작한다.
ex) var bounds : Rectangle = new Rectangle ( ,,, );
var sound : Sound = new Sound();
var date : Date = new Date();
var color: Color = new Color();
e.currentTarget 이 너무 길므로
변수로 지정을 해서 줄일 수 있다.
var mc:MovieClip = e.currentType
=> 그러나 에러가 난다.
=> 이유는 e.currentType을 지정해줄 객체들이 모두 MovieClip 이 아닐 수 있으므로
=> 확인차 한번더 지정해 줄 필요가 있다.
=> var mc:MovieClip = MovieClip(e.currentType); // ex) m.text = String (a); 형변환
=> 또는 var mc:MovieClip = e.currentType as MovieClip;
'코딩공부 > Action Script 3.0' 카테고리의 다른 글
슈팅게임 만들기 (0) | 2015.02.16 |
---|---|
addChild 와 e.currentTarget 을이용한 눈내리는 애니메이션 구현 (0) | 2015.02.13 |
충돌 테스트 hitTestObject, hitTestPoint 예제 (0) | 2015.02.13 |
1차 함수와1차함수의 응용 ( 마우스 움직임에 따라 스크롤되는 이미지 예제 ) (0) | 2015.02.13 |
슬라이드 메뉴 만들기 예제 (0) | 2015.02.12 |