디스플레이 리스트라는 것은 플레시플레이어의 렌더러를 통해 화면에 그려질 객체의 리스트이다. AS3를 인식할 수 있는 플래시 플레이어는 9버전 이상부터 지원하는데 AVM2(actionscript virtual Machine)라는 액션스크립트 판독/실행기와 렌더링을 담당하는 렌더러를 포함하고있다. AS3이전 버전의 AS는 무비클립이 생성될 때 자동으로 화면에 그려지게 되고 자신이 속한 부모를 바꿀 수 없었다. 만약 부모를 옮겨야 한다면 삭제 후 새로 생성하는 과정을 거쳐야만 했다. 하지만 새로운 렌더러는 이러한 기능을 대폭 개선하여 유연한 구조와 렌더링 프로세스의 개선에 중점을 두었다.

* 디스플레이 리스트 3원소
스테이지 :
스테이지는 디스플레이 계층 구조의 최상위이다. 한 개의 무비당 유일한 한개의 스테이지를 가지고 있으며 한개의 디스플레이 컨테이너(main application class)를 갖는다. 그리고 모든 디스플레이 객체는 stage를 통하여 접근 할 수 있다.

디스플레이 컨테이너 : 객체 안에 다른 자식 객체를 가질 수 있는 객체이며 자식을 포함 할 수 있는 스테이지도 디스플레이 객체 컨테이너이고 Sprite,MovieClip, Shape도 디스플레이 객체 컨테이너이다. 디스플레이 객체 컨테이너가 디스플레이 리스트에서 지워지면 해당 컨테이너 안의 자식들도 디스플레이 리스트에서 지워진다.

디스플레이 객체 : 디스플레이 오브젝트는 눈에 보이는 원소이다. MovieClip, Sprite는 디스플레이 컨테이너인 동시에 디스플레이 오브젝트이고 TextField는 디스플레이 오브젝트이다. 이러한 디스플레이 오브젝트를 화면에 보이고자 한다면 디스플레이 리스트에 등록되어진 컨테이너에 붙여야 화면에 보여지게 된다.

[ 디스플레이 리스트 계층 구조 1]

사용자 삽입 이미지

[ 디스플레이 리스트 계층 구조 2]

사용자 삽입 이미지

DisplayObject :
DisplayObject 클래스는 표시 목록에 배치할 수 있는 모든 객체의 기본 클래스입니다.

Bitmap :

Bitmap 클래스는 비트맵 이미지를 표시하는 표시 객체를 나타냅니다.

InteractiveObject :

InteractiveObject 클래스는 사용자가 마우스와 키보드를 사용하여 상호 작용할 수 있는 모든 표시 객체의 추상 기본 클래스입니다

MorphShape :

MorphShape 클래스는 표시 목록에서 MorphShape 객체를 나타냅니다. MorphShape 객체는 ActionScript에서 직접 만들 수 없으며, Flash 제작 도구에서 모양 트윈을 만들 때 함께 만들어집니다.

Shape :

Shape 클래스는 ActionScript 드로잉 API를 사용하여 가벼운 모양을 만드는 데 사용됩니다. Shape 클래스에는 Graphics 클래스의 메서드에 액세스할 수 있게 해 주는 graphics 속성이 포함됩니다.

StaticText :

이 클래스는 표시 목록의 StaticText 객체를 나타냅니다. ActionScript로는 StaticText 객체를 만들 수 없습니다. StaticText 객체를 만들려면 제작 도구를 사용해야 합니다.

Video :

Video 클래스를 사용하면 SWF 파일에 포함하지 않고도 응용 프로그램에서 라이브 스트리밍 비디오를 표시할 수 있습니다.

DisplayObjectContainer :

DisplayObjectContainer 클래스는 표시 목록에서 표시 객체 컨테이너 역할을 할 수 있는 모든 객체에 대한 기본 클래스입니다.

SimpleButton :

SimpleButton 클래스를 사용하여 SWF 파일에 있는 버튼 심볼의 모든 인스턴스를 제어할 수 있습니다. 제작 도구에서 버튼 인스턴스를 만든 후 SimpleButton 클래스의 메서드와 속성을 사용하여 ActionScript에서 버튼을 조작할 수 있습니다.

TextField :

TextField 클래스를 사용하면 텍스트 표시 및 입력을 위한 표시 객체를 만들 수 있습니다.

Loader :

Loader 클래스는 SWF 파일이나 이미지(JPG, PNG 또는 GIF) 파일을 로드하는 데 사용됩니다.

Sprite :

Sprite 객체는 무비 클립과 유사하지만, 타임라인이 없기 때문에 타임라인이 필요 없는 객체에 적합한 기본 클래스입니다.

Stage :

전역적으로 액세스할 수 없으며 DisplayObject 인스턴스의 stage 속성을 통해 액세스해야 합니다.

MovieClip :

MovieClip 클래스는 Sprite, DisplayObjectContainer, InteractiveObject, DisplayObject 및 EventDispatcher 클래스로부터 상속됩니다. Sprite 객체와 달리 MovieClip 객체에는 타임라인이 있습니다.


Posted by 버터백통