액션스크립트(ActionScript)는 ECMA스크립트를 기반으로 하는 스크립팅 언어이며, 주로 어도비 플래시 및 어도비 플래시 플레이어를 사용하는 소프트웨어나 웹사이트를 개발하기 위해 (웹 페이지에 SWF 파일 형식으로) 사용된다. 하이퍼카드의 스크립트 언어인 하이퍼토크의 파생이다.
1) Action Script 2.0 예시
class com.example.Greeter extends MovieClip
{
public function Greeter()
{
var txtHello:TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100);
txtHello.text = "Hello, world";
}
}
2) Action Script 3.0 예시
package com.example
{
import flash.text.TextField;
import flash.display.Sprite;
public class Greeter extends Sprite
{
public function Greeter()
{
var txtHello:TextField = new TextField();
txtHello.text = "Hello World";
addChild(txtHello);
}
}
}
Action Script 2.0 기준 세가지 유형의 변수 범위가 있다.
로컬 변수, 타임라인변수, 전역 변수
각 변수를 제어하는 범위는 아래와 같다.
function movie() {
var a; // 로컬변수
for(a=0; a<=10; a++) {
_root.MX._alpha = a;
}
}
_global 식별자는 변수뿐만 아니라 객체, 함수 등을 전역적인 범위를 갖도록 만든다.
플래시 무비의 모든 타임라인과 범위 내에서 동일한 이름으로 나타나게된다
Init_value = 10; // 타임라인변수
_global.myName = "sung"; // 전역변수
만약 무비클립이 비행기의 인스턴스명이 Plane, 엔진 engine, 오일 oil 일때
모든 무비클립의 최상의 위치의 고유의 인스턴스명은 _root이며
버튼클립에서 이벤트로 제어할 경우 아래와 같다.
on(release) {
Plane.engine.oil = 10;
Plane.engine._x += 10;
}
무비클립에서 제어하는 경우에는 아래와 같다.
onClipEvent (enterFrame) {
// 무비클립으로 제어할 경우 _root 최상단 키워드를 사용해야 한다.
_root.Plane.engine._x += 10;
}
- 하위 무브클립에 영향을 끼치는 속성(키워드)
_x, _y, _rotation, _xscale, y_scale, _height, _width, _alpha, _visible
- 자기 자신(this)
_focusrect, _highquality, _quality, _soundbuftime 은 전체 플래시 무비에 영향을 준다.
on(release)
{
play(); // 프레임재생
gotoAndStop(1); // 1번프레임으로 이동후 정지
gotoAndPlay(2); // 2번프레으로 이동후 재생
nextFrame(); // 다음프레임으로 이동 정지
prevFrame(); // 이전프레임으로 이동 정지
//button 심볼을 제어하는 경우
무비심볼에 인스턴스명 : sphere
_root.sphere._x += 20; // 현심볼객체의 자리에서 20 이동
}
// 프레임이 읽어졌을 때 해당 심볼에 알파값을 50 으로 제어
onClipEvent(load)
{
_alpha = 50;
}
// 프레임이 지나가면서 심볼의 좌표를 이동
onClipEvent(enterFrame)
{
_x += 5;
_y += 5;
}
// 버튼심볼에 액션스크립트로 sphere 객체 제어
on(release)
{
sphere._x += 10;
sphere._y += 10;
sphere._alpha = 50;
}
/-
새로운 무비클립 객체를 원본으로부터 복제하고
드래그될 수 있도록 합니다.
*-
on(press)
{
this.duplicateMovieClip(this._name+_root.cnt,_root.cnt);
_root[this._name+_root.cnt].startDrag();
}
// root 에서의 사용법
loadMovie("url","target","method")
loadMovie("경로",1);
첫번째 경로 두번째 레벨값
특정위치에 불러올때 사용
만약 무비클립에 인스턴스명이 img 일경우
_root.img.loadMovie("경로");
자바스크립트 Focus 핸들처리 - Document.hasFocus() (1) | 2018.12.03 |
---|---|
Flash Builder - Air Launchpad (0) | 2018.09.09 |
HTML5 소개 (0) | 2018.09.04 |
JavaScript - 현재 페이지의 URL 가져오기 (0) | 2018.09.04 |
REN 명령어 - 파일 이름 변경 (0) | 2017.12.10 |
댓글 영역