동적으로 라이브러리에 있는 무비 클립이나 bitmap 파일을 어떻게 불러 올수 있을까요?
as3.0 에서 class 개념이 좀더 확장 되면서 Linkage 에서 identifial 지정 뿐만 아니라 class 및 base 클래스를 지정 할수 있습니다. 라이브러리에 있는 객체들을 동적으로 불러 오기 위해서는 Linkage 와 class 와 new 와 addChild 이 필요 합니다.
우선 Linkage 창을 보면 (라이브러리에서 우클릭 Linkage)
Export for Actionscript 를 클릭하면
무비 클립을 Linkage 하셨다면 flash.display.MovieClip 가 Base로 지정되게 되고 자신이 이름 붙일수 있는 Class 창이 활성화 됩니다 ( 여기서는 cursor ) 원하는 class 이름을 써 놓고 ok 를 누르게 되면 이제 해당 객체가 클래스로 정의가 된 것입니다. (매우 간단히 클래스를 만들수 있다는 ) ( 아마 내부적으로 fla 파일에 매여 있는 class 가 생성됩니다. )
만약 아래와 같은 무비 클립을 Linkage 하셨다면.
var cur:cursor = new cursor(); <-- var mc:MovieClip = new MovieClip();
addChild(cur);
하게 되면 좌표 0,0 값에 cur 가 보여 지게 됩니다.
동적으로 다른 위치에 5개 생성 for(var i:int= 0; i < 5; i++){ var cur:cursor = new cursor(); } |
이런식으로 연결하여 사용하시면 되고요, 이것 이용해서 우리가 지금까지 토의 했던 상속이라는 개념을 적용할수 있습니다. 위의 cursor는 단지 화살표 모양의 무비 클립일 뿐 속성이 정의가 안되어 있는데 여기서 속성을 추가해 보겠습니다. 같은 폴더에 Ccursor.as 를 생성하시고 아래 코드 입력.
|
|
Ccursor class 로 addChild 된 왼쪽 객체 만이 마우스 이벤트에 반응하게 됩니다. 이와 같이 Flash 는 라이브러리에 있는 사용자 정의 객체들을 자유 롭게 사용할수 있는 편안한 인터페이스를 제공합니다.
'Actionscript3.0' 카테고리의 다른 글
[AS3.0] flash.media.Sound 기본내용정리. (0) | 2008.12.11 |
---|---|
[AS3.0] Loader 클래스의 이해와 쓰임 (1) | 2008.12.11 |
Actionscript3.0 을 사용해야 하는 6가지 이유 (0) | 2008.12.11 |