액션 스크립트 용어 및 정리

플래셔
2007.03.16 14:02:00
http://cafe.naver.com/q69/86171

용어
다른 스크립팅 언어와 마찬가지로 ActionScript는 자체 용어를 사용합니다. 중요한 ActionScript 용어는 다음과 같습니다.



액션은 SWF 파일이 재생되는 동안 SWF 파일에 작업을 지시하는 명령문입니다. 예를 들어 gotoAndStop()은 재생 헤드를 특정 프레임이나 레이블로 보냅니다. 이 설명서에서 액션명령문이라는 용어는 같은 의미입니다.



부울은 true 또는 false 값입니다.



클래스는 새 유형의 객체를 정의하기 위해 만들 수 있는 데이터 유형입니다. 클래스를 정의하려면 액션 패널에서 현재 작성하고 있는 스크립트가 아닌 외부 스크립트 파일에 class 키워드를 사용합니다.



상수는 바뀌지 않는 요소입니다. 예를 들어, Key.TAB 상수는 항상 같은 의미로서 키보드의 Tab 키를 나타냅니다. 상수는 값을 비교하는 데 유용합니다.



생성자는 클래스의 속성 및 메서드를 정의하는 데 사용하는 함수입니다. 생성자는 클래스 정의에 포함된 클래스와 동일한 이름을 가진 함수입니다. 예를 들어, 다음 코드에서는 Circle 클래스를 정의하고 생성자 함수를 구현합니다.



// file Circle.as
class Circle {
private var radius:Number
private var circumference:Number
// constructor
function Circle(radius:Number) {
circumference = 2 * Math.PI * radius;
}
}



생성자는 특정 클래스에 기초한 객체를 생성(인스턴스화)할 때에도 사용됩니다. 다음 명령문은 내장 클래스인 Array와 사용자 정의 클래스인 Circle에 대한 생성자입니다:



my_array:Array = new Array();
my_circle:Circle = new Circle();



데이터 유형은 변수나 ActionScript 요소가 보유할 수 있는 정보의 종류를 설명합니다. ActionScript 데이터 유형으로는 String, Number, Boolean, Object, MovieClip, Function, null 및 undefined가 있습니다. 자세한 내용은 데이터 유형을 참조하십시오.



이벤트는 SWF 파일이 재생되는 동안 발생하는 액션입니다. 예를 들어 무비 클립을 로드할 때, 재생 헤드가 프레임에 들어올 때, 사용자가 버튼이나 무비 클립을 클릭할 때, 사용자가 키보드를 누를 때마다 서로 다른 이벤트가 생성됩니다.



이벤트 핸들러는 mouseDown이나 load와 같은 이벤트를 관리하는 특수 액션입니다. ActionScript 이벤트 핸들러의 종류는 이벤트 핸들러 메서드와 이벤트 리스너로 두 가지가 있습니다. 참고로, 이벤트 핸들러의 종류도 on() 및 onClipEvent()로 두 가지가 있으며 이 이벤트 핸들러를 버튼이나 무비 클립에 직접 지정할 수 있습니다. 액션 도구 상자에서 이벤트 핸들러 메서드 또는 이벤트 리스너가 있는 각 ActionScript 객체에는 이벤트 또는 리스너라는 하위 범주가 있습니다. 일부 명령은 이벤트 핸들러 및 이벤트 리스너 모두로 사용될 수 있으며 이 두 하위 범주에 포함될 수도 있습니다.



표현식은 값을 나타내는 ActionScript 심볼의 올바른 조합입니다. 표현식은 연산자와 피연산자로 구성됩니다. 예를 들어 x + 2 표현식에서 x와 2는 피연산자이고 +는 연산자입니다.



함수는 매개 변수를 받고 값을 반환할 수 있는 다시 사용할 수 있는 코드의 블록입니다. 자세한 내용은 함수 만들기를 참조하십시오.



식별자는 변수, 속성, 객체, 함수 또는 메서드를 나타내는 데 사용하는 이름입니다. 첫 문자는 글자, 밑줄(_) 또는 달러 기호($)여야 합니다. 그 이후의 문자는 문자, 숫자, 밑줄 또는 달러 기호여야 합니다. 예를 들어 firstName은 변수의 이름입니다.



인스턴스는 특정 클래스에 속하는 객체입니다. 클래스의 각 인스턴스에는 해당 클래스의 모든 속성과 메서드가 들어 있습니다. 예를 들어, 모든 무비 클립은 MovieClip 클래스의 인스턴스입니다. 따라서 어떠한 무비 클립 인스턴스에서도 MovieClip 클래스의 모든 메서드와 속성을 사용할 수 있습니다.



인스턴스 이름은 스크립트에서 무비 클립 및 버튼 인스턴스를 대상으로 지정할 수 있도록 하는 고유 이름입니다. 속성 관리자를 사용하여 인스턴스 이름을 스테이지의 인스턴스에 지정합니다. 예를 들어, 라이브러리의 마스터 심볼은 counter이고 SWF 파일에 있는 해당 심볼의 두 인스턴스의 이름은 scorePlayer1_mc와 scorePlayer2_mc라고 합니다. 다음 코드는 인스턴스 이름을 사용하여 각 무비 클립 인스턴스에 score라는 변수를 설정합니다.



_root.scorePlayer1_mc.score += 1;
_root.scorePlayer2_mc.score -= 1;



인스턴스 이름을 지정할 때 특수한 접미사를 사용하면 코드를 입력할 때 코드 힌트(코드 힌트 사용 참조)가 표시되도록 할 수 있습니다. 자세한 내용은 접미어를 사용하여 코드 힌트 표시를 참조하십시오.



키워드는 특수한 의미를 가진 예약된 단어입니다. 예를 들어 var는 로컬 변수를 선언할 때 사용하는 키워드입니다. 키워드는 식별자로 사용할 수 없습니다. 예를 들어 var는 올바른 변수 이름이 아닙니다. 키워드 목록을 보려면 키워드를 참조하십시오.



메서드는 클래스와 연관된 함수입니다. 예를 들어 getBytesLoaded()는 MovieClip 클래스와 연관된 내장 메서드입니다. 내장 클래스에 기반한 객체 또는 사용자 정의 클래스에 기반한 객체에 사용하기 위해 메서드 역할을 하는 함수를 만들 수 있습니다. 예를 들어 다음 코드에서 clear()는 이전에 정의한 controller 객체의 메서드가 됩니다.



function reset(){
this.x_pos = 0;
this.x_pos = 0;
}
controller.clear = reset;
controller.clear();



객체는 속성과 메서드의 컬렉션입니다. 각 객체는 특정 클래스의 인스턴스이며 고유 이름이 있습니다. 내장 객체는 ActionScript 언어에 미리 정의되어 있습니다. 예를 들어, 내장 Date 객체는 시스템 시계의 정보를 제공합니다.



연산자는 하나 이상의 값으로부터 새 값을 계산하는 용어입니다. 예를 들어, 더하기(+) 연산자는 두 개 이상의 값을 더하여 새 값을 만듭니다. 연산자가 처리하는 값을 피연산자라고 합니다.



매개 변수는 인수라고도 하며 함수에 값을 전달할 수 있도록 하는 자리 표시자입니다. 예를 들어, 다음 welcome() 함수는 매개 변수로 받은 firstName 및 hobby의 두 값을 사용합니다.



function welcome(firstName, hobby) {
welcomeText = "Hello, " + firstName + "I see you enjoy " + hobby;
}



패키지는 클래스 파일이 하나 이상 포함된 디렉토리이며 지정된 클래스 경로 디렉토리에 있습니다(클래스 경로 이해 참조).



속성은 객체를 정의하는 특성입니다. 예를 들어, _visible은 모든 무비 클립의 속성으로서 무비 클립을 표시할지 또는 숨길지 여부를 정의합니다.



대상 경로는 SWF에 있는 무비 클립 인스턴스 이름, 변수 및 객체의 계층 주소입니다. 무비 클립 속성 관리자에서 무비 클립 인스턴스의 이름을 지정합니다. 기본 타임라인의 이름은 항상 _root입니다. 대상 경로를 사용하여 무비 클립의 액션을 지정할 수 있으며 변수의 값을 가져오거나 설정할 수 있습니다. 예를 들어, 다음 명령문은 stereoControl 무비 클립 안에 있는 volume 변수의 대상 경로입니다.


_root.stereoControl.volume


대상 경로에 대한 자세한 내용은 절대 및 상대 대상 경로 사용을 참조하십시오.



변수는 모든 데이터 유형의 값을 보유하는 식별자입니다. 변수는 만들거나, 변경하거나, 업데이트할 수 있습니다. 변수에 저장된 값을 가져와 스크립트에 사용할 수 있습니다. 다음 예제에서 등호의 왼쪽에 있는 식별자가 변수입니다.



var x = 5;
var name = "Lolo";
var c_color = new Color(mcinstanceName);



변수에 대한 자세한 내용은 변수를 참조하십시오.








<<플래쉬 액션 스크립트flash action script>>

----------------------------------------------------------------------------
// ..... 주석 기호
/* ..... */주석 기호
----------------------------------------------------------------------------
r// 리턴 코드(ASC 13)
n// 줄바꿈 코드 (ASC 10)
rn// 줄바꿈 코드(2줄)
t// Tab 코드 (ASC 9)
b// Backspce 코드 (ASC 8)
& // text 파일 데이타 구분 코드
----------------------------------------------------------------------------
산술연산자+, -, *, /, % //%나머지를 구한다
대입연산자=, +=, -=, *=, /=, %= //i+=4 와i=i+4 는 같다
증감연산자++, --//i++와 i=i+1 는 같다
비교연산자==, !=, >, <, >=, <=//!='같지않다' 로 해석
비교연산자=== //숫자 와 문자 구분
a = 5;b = "5";//숫자 5 와 문자 "5"
(a == b)//숫자 5 와 문자 "5"는 같다 (true)
(a === b) //숫자 5 와 문자 "5" 는 틀리다 (false)
논리연산자&&, ||, ! //그리고(AND), 또는(OR), 아니면(NOT)
조건연산자?( a ) ? b : c ;//a 조건이 맞으면 b 틀리면 c 실행
x=5;y=10;z=(x<6) ? x: y; trace (z); //z 은 5 이다
문자연산자eqnenotoradd//eq(==) ne(!=) not(!) or(||) add(+ 문자열의 연결)
( ) //연산의 순서를 정한다
[ ] //배열을 지정한다
" " //문자를 지정한다
a=1+2;trace(a); //연산 결과 출력.결과는 3
aaa=1;set("ccc", aaa );trace(ccc);//변수에 값을 지정.결과는 1
aaa=1;set("ccc", "aaa");trace(ccc); //변수에 값을 지정.결과는 aaa
set("ooo", getProperty ("ppp", _x )); //ppp x 좌표를ooo 에 지정.
----------------------------------------------------------------------------
for (a=1; a<=10; a++){ trace("a="+a); }; //for반복문
for (i=1; i<=120;i+=12) { continue; }; //for step 반복문
while(true) {if(a == 0) { break; }; }; //while반복문
do { if(a == 0) { break; }; };while(true); //do 반복문
if((n == 0) || (n >= 5)&&(n <= 55)!(n=15)) { //if 조건문
 gotoAndPlay(1);
} else if (n == 2) {
 gotoAndPlay(2);
} else {
 gotoAndPlay(3);
};
num_ch = 3; //switch 조건문
switch (num_ch) {
case 1:trace ( " case 1 tested true " );break;
case 2:trace ( " case 2 tested true " );break;
default:trace ( " no case tested true " );
};
----------------------------------------------------------------------------
function sumnumber(a,b,c) {return(aaa= a+b+c); };// 함수
sumnumber(1,2,3);
trace(aaa);
----------------------------------------------------------------------------
Math.abs(-1)//절대값. 결과는 1
Math.sin(1) //sin 값. 결과는 0.841470984807897
Math.cos(1) //cos 값. 결과는 0.54030230586814
Math.tan(1) //tan 값. 결과는 1.5574077246549
Math.log(2) //log 값. 결과는 0.693147180559945
Math.exp(1) //지수 값.결과는 2.71828182845905
Math.sqrt(9)//제곱근 값.결과는 3
Math.pow(2 , 4) //거듭제곱 값.결과는 16
Math.ceil(1.1)//가까운 정수로 올림 값.결과는 2
Math.ceil(1.5)//가까운 정수로 올림 값.결과는 2
Math.floor(1.2) //가까운 정수로 내림 값.결과는 1
Math.floor(1.7) //가까운 정수로 내림 값.결과는 1
Math.round(1.2) //가까운 정수로 반올림 값.결과는 1
Math.round(1.5) //가까운 정수로 반올림 값.결과는 2
Math.max(1 , 2) //두 정수 중 큰 정수값.결과는 2
Math.min(1 , 2) //두 정수 중 작은 정수값.결과는 1
int(1.12 ); //수치를 정수화. 결과는 1
int(1.82 ); //수치를 정수화. 결과는 1
parseInt("3.2");//문자열을 정수화.결과는 3
parseInt("3.7");//문자열을 정수화.결과는 3
parseInt("5abc"); //문자열을 정수화.결과는 5
parseInt("abc5"); //문자열을 정수화.결과는 NaN
parseInt("3E8", 16);//16 진수로 변환. 결과는 1000
parseInt("777", 8); //8 진수로 변환. 결과는 511
parseInt("1010", 2);//2 진수로 변환. 결과는 10
parseFloat("2") // 문자열을 부동점 숫자로 변환.결과는 2
parseFloat("2.4") // 문자열을 부동점 숫자로 변환.결과는 2.4
parseFloat("2.6abc")// 문자열을 부동점 숫자로 변환.결과는 2.6
Number("11")//문자열을 숫자로 변환. 결과는 11
Number("12.34") //문자열을 숫자로 변환. 결과는 12.34
Number("12.34abc")//문자열을 숫자로 변환. 결과는 NaN
sss = 123;uuu = sss.toString();// 숫자를 문자로변환.결과는 123
ord("abc");//ASCII 값. 결과는 97
s = "abc"; sss = s.charCodeAt(0);//1번째 ASCII 값 . 결과는 97
s = "abc"; sss = s.charCodeAt(1);//2번째 ASCII 값.결과는 98
chr(65); //ASCII 코드를 문자화.결과는 A
String.fromCharCode(64,65,66); //ASCII 코드를 문자화.결과는 @AB
Math.random(); // 난수 발생.결과는 0 - 1 사이의 소숫점 포함한 값
random(5); // 난수 발생.결과는 0,1,2,3,4 중 하나
----------------------------------------------------------------------------
// delete 변수 또는 객체 ; // 변수를 삭제(var 로 선언된 변수는 삭제할 수 없다)
account = 1; trace (account) ;// 결과는 1
account = 1; delete account;trace (account);// 결과는 undefined
delete onEnterFrame;// 반복 실행 중지
----------------------------------------------------------------------------
typeof( );// String, Number, MovieClip, Object, Boolean, Function 여부를 지정
trace (typeof(1));// 결과는 Number
trace (typeof("1"));// 결과는 String
trace (typeof(aaa));// aaa가 무비클립 이라면결과는 MovieClip
----------------------------------------------------------------------------
isFinite( );// 숫자가 유한수이면 true 무한수거나 음의 무한대이면 false
trace (isFinite(aaa));// aaa 값이 NaN 이라면 결과는 false
----------------------------------------------------------------------------
Mouse.show(); // 마우스 보임
Mouse.hide(); // 마우스 감춤
myClip.onMouseDown = function () {trace (" depth 무시"); }; // 마우스 누를 때
myClip.onMouseUp = function () {trace ("depth 무시"); };// 마우스 눌렀다 놓을 때
myClip.onMouseMove = function () { trace ("depth 무시"); }; // 마우스 이동할 때
myClip.onPress = function () { trace ("depth 적용"); }; // 마우스 누를 때
myClip.onRelease = function () { trace ("depth 적용 "); };// 마우스 눌렀다 놓을 때
myClip.onReleaseOutside = function () { trace ("Outside"); }; // 마우스 나가서 놓을 때
myClip.onRollOver = function () { trace ("Over called"); }; // 마우스 오버 때
myClip.onRollOut = function () { trace ("Out called"); }; // 마우스 아웃 때
----------------------------------------------------------------------------
// 단추무비클립 클릭후 액션 스크립트를 넣는다
on (press){ }// 마우스 버튼을 누를 때 };x}o
on (release){ }// 마우스 버튼을 눌렀다 뗄 때
on (releaseOutside){}// 마우스 버튼을 누르고 나가서 뗄 때
on (rollOver){}// 마우스 포인트가 위로 올라올 때
on (rollOut){ }// 마우스 포인트가 밖으로 나갈 때
on (dragOver){}// 누른 채로 밖으로 나갔다가 다시 들어올 때
on (dragOut){ }// 마우스버튼을 누르고 바깥으로 드래그할 때
on (keyPress){}// 지정한 키를 누를 때
----------------------------------------------------------------------------
// 무비클립 클릭후 액션 스크립트를 넣는다
onClipEvent (load) {}// 시작 될때};x}o
onClipEvent (unload) {}// 제거 될때
onClipEvent (enterFrame) {}// 트리거 될때
onClipEvent (mouseMove) { }// 마우스가 이동할 때
onClipEvent (mouseDown) { }// 마우스 클릭 시
onClipEvent (mouseUp) { }// 마우스 클릭 후
onClipEvent (keyDown) { }// 키를 누를 때
onClipEvent (keyUp) { }// 키를 눌렀다 놓을 때
onClipEvent (data) {}// loadVariables 또는 loadMovie 액션에서 데이터가 수신될 때
----------------------------------------------------------------------------
TextField.onChanged = function () { trace ("onChanged called"); };
// 텍스트 필드의 내용이 변경될 때
TextField.onSetFocus = function () { trace ("onSetFocus called"); };
// 텍스트 필드의 내용 부분에 마우스가 클릭 될 때
TextField.onKillFocus = function () { trace ("onKillFocus called"); };
// 텍스트 필드의 내용 바깥 부분에 마우스가 클릭 될 때
TextField.onScroller = function () { trace ("onScroller called"); };
// 텍스트 필드의 내용이 스크롤 될 때
----------------------------------------------------------------------------
myMovieClip.onData = function () { trace ("onData called"); };
// 무비 클립이 loadVariables 또는 loadMovie 호출로부터 데이터를 받을 때
myMovieClip.onLoad =function () { trace ("onLoad called"); };
// 무비 클립이 load 호출로부터 데이터를 받을 때
myMovieClip.onUnLoad =function () { trace ("onUnLoad called"); };
// 무비 클립이 Unload 때
myMovieClip.stop()
// 작업 중지
----------------------------------------------------------------------------
myDate = new Date(); // 날짜 로드
myDate = new Date (년,월,일,시,분,초); // 날짜 지정
yyyy = (myDate.getFullYear() + "-" + (myDate.getMonth() + 1) + "-" + myDate.getDate());
tttt = (myDate.getHours()+ " :" + myDate.getMinutes() + " :" +myDate.getSeconds());
----------------------------------------------------------------------------
_root.onEnterFrame = function() { }; // 메인화면에서 프레임 반복
onEnterFrame = function() { }; // 심볼화면에서 프레임 반복
----------------------------------------------------------------------------
tmtm = getTimer();
onEnterFrame = function() {
if ( (getTimer()-tmtm) >= 500 ) { tmtm=getTimer(); trace (tmtm); }; // 0.5초후 반복실행
if ( (getTimer()-tmtm) >= 1000 ) { tmtm=getTimer(); trace (tmtm); };// 1초후 반복실행
if ( (getTimer()-tmtm) >= 2000 ) { tmtm=getTimer(); trace (tmtm); };// 2초후 반복실행
};
----------------------------------------------------------------------------
onEnterFrame = function() {
nr += 1;if (nr > 5 ){deleteonEnterFrame;}; // 5번 반복실행후 중지
trace (nr);
};
----------------------------------------------------------------------------
createTextField ("ins", 1, 100, 100, 50, 50)
ins.border = true;
function callback() {
ins._x += 5;
if ( ins._x > 400 ) { clearInterval( intervalID );};// 중지 (clearInterval)
}
var intervalID;
intervalID = setInterval( callback, 100 ); //0.1초후 반복실행 (setInterval)
----------------------------------------------------------------------------
#include "script.as" // script.as 파일 넣기 (액션 스크립트 txt 파일)
----------------------------------------------------------------------------
System.useCodepage = true; // 한글 깨짐 방지
trace(System.capabilities.language)// Flash Player가 지원하는 언어. 결과는 ko
trace(System.capabilities.hasVideoEncoder) // 지원되는 비디오 인코더. 결과는 true, false.
trace(System.capabilities.hasAudioEncoder )// 지원되는 오디오 인코더. 결과는 true, false.
trace(System.capabilities.hasAudio)// 오디오 성능이 있는지 여부. 결과는 true, false.
trace(System.capabilities.hasMP3)// MP3 디코더가 있는지 여부. 결과는 true, false.
----------------------------------------------------------------------------
escape("abc가나다"); // URL에 사용하기 위해 인코딩.
// System.useCodePage= true; 일때 결과는 abc%B0%A1%B3%AA%B4%D9
// System.useCodePage= false; 일때 결과는 abc%EA%B0%80%EB%82%98%EB%8B%A4
----------------------------------------------------------------------------
trace(targetPath(this)); // 대상 패스를 반환.결과는 _level0.instance1 로 표시
trace(this.valueOf()); // 결과는 _level0 로 표시
----------------------------------------------------------------------------
trace(this.getBytesLoaded());// 무비클립의 로드된 바이트 수를 알려준다.
trace(this.getBytesTotal()); // 무비클립의 전체용량 바이트 수를 알려준다.
----------------------------------------------------------------------------
getURL("C:/")// 탐색기 열기
getURL("C:/Windows/NOTEPAD.EXE"); }; // 메모장 열기
getURL("C:/Program Files/Accessories/WORDPAD.EXE");// 워드패드 열기
getURL("C:/Program Files/Accessories/MSPAINT.EXE");// 그림판 열기
getURL("C:/Windows/CALC.EXE"); // 계산기 열기
getURL ("aaa.exe");// aaa.exe 파일 열기 (message)
getURL ("aaa.txt", "_self"); // aaa.txt 파일 열기
getURL ("movie.html", "_self");// movie.html 파일 열기
getURL ("http://www", "_blank"); //
http://www 를 새로운 창으로 열기
----------------------------------------------------------------------------
Stage.showMenu = "true";// 스크린 메뉴 보임
Stage.showMenu = "false"; // 스크린 메뉴 감춤
Stage.scaleMode = "noScale";// 화면의 사이즈를 고정
Stage.align = "TL"; // 화면의 정렬을 T(위) L(왼쪽)
//"T" 위 가운데"B" 아래 가운데"L" 가운데 왼쪽"R" 가운데 오른쪽
//"TL" 위쪽 왼쪽 "TR" 위쪽 오른쪽 "BL" 아래쪽 왼쪽 "BR" 아래쪽 오른쪽
Stage.height// 픽셀로 표시된 스테이지의 높이
Stage.width // 픽셀로 표시된 스테이지의 넓이
----------------------------------------------------------------------------
_root.createEmptyMovieClip("box",1);// 스테이지 테두리 주기
with (_root.box) {moveto(1, 1); linestyle(10, 0x00cc00, 100);
lineto(stage.width, 1); lineto(stage.width, stage.height);
lineto(1, stage.height);lineto(1, 1); };
----------------------------------------------------------------------------
fscommand("showmenu", true);// 스크린 메뉴 보임
fscommand("showmenu", false); // 스크린 메뉴 감춤
fscommand("allowscale", true);// 스크린 크기에 따라 무비의 크기도 변함
fscommand("allowscale", false); // 스크린 크기에 따라 무비의 크기도 안변함
fscommand("fullscreen", true);// 풀 스크린 (esc키 누르면 해제)
fscommand("fullscreen", false); // 풀 스크린을 원래의 크기로 만든다
fscommand("trapallkeys", true); // 키보드 키 사용할 수 없음 (풀 스크린 일때 esc키 먹통)
fscommand("trapallkeys", false);// 키보드 키 사용할 수 있음
fscommand("quit");// 스크린 닫기
fscommand ("exec", "a.exe");// a.exe 파일 실행 (no message)
플래시 무비(exe) 가 위치하는 폴더안에 fscommand 라는 하위 폴더를 만들고
fscommand 디렉토리에a.exe 가 있을때 플래시 무비(exe)를 실행하면 a.exe파일 실행
----------------------------------------------------------------------------
// getURL 로 javascript 사용하기
var hello = "Hello, World";
getURL("javascript:alert(" "+ hello + "")"); // 메세지 띄우기
getURL("javascript:window.self.close()");// 윈도우창 닫기
getURL("javascript:window.external.AddFavorite('http://','가')" );//즐겨찾기 추가
----------------------------------------------------------------------------
// fscommand 로 javascript 사용하기
1.fscommand ("messagebox", "This is a Flash."); // aaa.swf flash script
2.파일메뉴 - 제작설정 - 포맷 (HTML체크) - HTML (템플릿: with FSCommand 체크)
3.파일메뉴 - 제작 (파일명은 aaa.swf) -aaa.html 파일이 디렉토리에 만들어 진다
4.aaa.html 파일을 열고function aaa_DoFSCommand(command, args) {아래에
if (command == "messagebox") {alert(args);}; 을 적고 저장 한다
5.aaa.html 실행 (실행후 제작설정 해제)
----------------------------------------------------------------------------
// fscommand 로 javascript 의 변수값 불러오기
1. fscommand ("search", TextFieldvar); // aaa.swf flash script
2. if (command == "search") {// aaa.html script
EEEfind = "FFFFFFFF";
window.d0cument.aaa.SetVariable("TextFieldvar", EEEfind) ;
return TextFieldvar;
};
3. aaa.html 실행
----------------------------------------------------------------------------
_root.loadMovie("a.swf");// swf 파일 불러오기
_root.bbb.loadMovie("a.swf") // swf 를 메인에 있는 bbb무비클립인스턴스에 불러오기
_root.loadMovie("a.swf", 1); // swf 를 레벨1로 불러오기 (2 는 1를screen over)
_root.loadMovie("aaa.jpg");// jpg 파일 불러오기
_root.bbb.loadMovie("aaa.jpg");// jpg 파일을 메인에 있는 bbb무비클립인스턴스에 불러오기
unloadMovie (1); // 레벨 1에 로드된 무비를 언로드
unloadMovie ("a.swf"); // 현재 무비에 로드된 a.swf 무비를 언로드
_root.bbb.unloadMovie(); // 메인 타임라인의 bbb 무비클립에 로드된 무비를 언로드
this["bbb"].unloadMovie(); // 현재 타임라인의 bbb 무비클립에 로드된 무비를 언로드
sss.bbb.unloadMovie(); // sss 심볼 타임라인의 bbb 무비클립에 로드된 무비를 언로드
----------------------------------------------------------------------------
button.onPress = function() { _root.loadMovie("aaa.swf"); } // aaa.swf 실행중 초기화 하기
----------------------------------------------------------------------------
_root["ball_"+counter]._x = 11; //메인 화면의 클립 좌표
this["ball_"+counter]._x = 11;//현재 화면의 클립 좌표
aaa["ball_"+counter]._x = 11; //aaa 심볼 화면의 클립 좌표
----------------------------------------------------------------------------
this.createEmptyMovieClip("aaa", 1); //무비클립 생성 (2 는 1를 screen over)
this.duplicateMovieClip (aaa, bbb, 1); //aaa 무비클립bbb 로 복사
this.bbb.removeMovieClip();//bbb 무비클립 삭제
myClip._visible = true;//클립 보임
myClip._visible = false; //클립 감춤
myClip.swapDepths(100);//클립 깊이 100 으로 지정 (2 는 1를 screen over)
myClip.swapDepths(otherClip);//클립 깊이 otherClip 과 바꿈
for (i=1; i<=360; i++){//클립 복사
duplicateMovieClip (ins1, "mc"+i, i);
setProperty ("mc"+i, _x, random(300));
setProperty ("mc"+i, _y, random(300));
setProperty ("mc"+i, _alpha, random(300));
setProperty ("mc"+i, _xscale, 150);
setProperty ("mc"+i, _yscale, 150);
};
for (i=1; i<=360; i++){//클립 복사
duplicateMovieClip (ins1, "mc"+i, i);
this["mc" + i]._x = i;
this["mc" + i]._y = i;
};
for (i=1; i<=50; i++){// 클립 이동
this["mc_"+i]._x += 10;
this["mc_"+i]._y += 10;
};
for (i=1; i<=360; i++){ // 클립 삭제
this["mc" + i].removeMovieClip ();
};
----------------------------------------------------------------------------
setProperty ("mv", _x, 150); // mv 무비클립 x좌표 속성 변경
myMovieX = getProperty( mv, _x); // mv 무비클립 x좌표 속성 읽기
trace(myMovieX);
----------------------------------------------------------------------------
_alpha알파값(%)
_currentframe 현재재생중인 프레임(#)
_droptarget 드래그 앤드드롭 할때 놓는 타깃위치(name)
_framesloaded 로드된 프레임수(#)
_height 높이(#)
_name 인스턴스(string)
_rotation 회전값(#)
_soundbuftime 사운드버퍼링 시간(기본값 5초:#)
_totalframes총프레임수(#)
_url다운로드한 URL(string)
_visible보인다,안보인다 (true,false)
_width가로길이(#)
_xx좌표(#)
_yy좌표(#)
_xmouse 마우스x좌표(#)
_ymouse 마우스y좌표(#)
_xscale x배율(%)
_yscale y배율(%)
----------------------------------------------------------------------------
_root.a.play;//메인에 있는 a무비클립프레임 재생
_root.a.stop;//메인에 있는 a무비클립프레임 중지
play();//stop으로 정지된 현재타임라인의 프레임 재생
stop();//현재타임라인의 프레임 중지
gotoAndPlay(1);//현재 Scene의 1프레임 재생
gotoAndPlay("a");//현재 Scene의 Label명 a 재생
gotoAndPlay("Scene 2", "c"); //Scene 2의 Label명 c 재생
a.gotoAndPlay(1);//a무비클립의 1프레임 재생
gotoAndStop(1);//현재 Scene의 1프레임 중지
nextScene(); //다음 장면의 프레임 1로 보내고 중지
prevSecne(); //이전 장면의 프레임 1로 보내고 중지
nextFrame(); //다음 프레임으로 보내고 중지
prevFrame(); //이전 프레임으로 보내고 중지
toggleHighQuality ();//저해상도와 고해상도 간을전환
updateAfterEvent();//화면을 갱신 (onClipEvent 핸들러 내에서만 사용)
//(onMouseDown,onMouseUp,onMouseMove)
----------------------------------------------------------------------------
tellTarget ("../a") { nextFrame(); } //../a 무비클립을 호출후 다음 프레임 재생
if (_framesloaded = 10) {} // 만약 무비의 10프레임이 로드되면
----------------------------------------------------------------------------
// with 문
for (i=0; i<1000; i++) {
with (aaa[i]) {
_x = Math.floor(Math.random() * 500);
_y = random(500);
_rotation = random(360);
}
}
// tellTarget 문 (속도빠름)
for (i=0; i<1000; i++) {
tellTarget (aaa[i]) {
_x = Math.floor(Math.random() * 500);
_y = random(500);
_rotation = random(360);
}
}
----------------------------------------------------------------------------
aaa = new Array();// 배열 초기화
aaa = new Array("1","2","3"); // 배열값 넣기
bbb = ["Sun","Mon","Tue"];// 배열값 넣기
aaa[1] = "abc"; // 배열값 변환( "2" 가 "abc" 로 변환)
aaa[0] = "Jan" ;aaa[1] = "Feb" ;aaa[2] = "Mar" ; // 배열값 변환
aaa[3] = "Apr"// 배열 추가 (aaa 값은"Jan,Feb,Mar,Apr" )
ccc = aaa.concat(bbb);// 배열 합침 (ccc 값은"Jan,Feb,Mar,Apr,Sun,Mon,Tue" )
ddd = ccc.join("/");// ,를/로 변환(ddd 값은"Jan/Feb/Mar/Apr/Sun/Mon/Tue" )
ddd = ccc.length; // 배열값 갯수 (ddd 값은7 )
ddd = ccc.slice(2,4); // 배열값 읽기 (ddd 값은"Mar,Apr" )
eee = ccc.push("z","zz"); // 배열추가후배열값 갯수 (eee 값은9 )
//(ccc 값은 "Jan,Feb,Mar,Apr,Sun,Mon,Tue,z,zz" 로 변함)
eee = ccc.pop();// 마지막 배열 분리후 값(eee 값은"zz" )
//(ccc 값은"Jan,Feb,Mar,Apr,Sun,Mon,Tue,z" 로 변함)
eee = ccc.shift();// 첫번째 배열 분리후 값 (eee 값은"Jan" )
//(ccc 값은"Feb,Mar,Apr,Sun,Mon,Tue,z" 로 변함)
eee = ccc.reverse();// 배열값 순서바꿈 (eee 값은"z,Tue,Mon,Sun,Apr,Mar,Feb" )
//(ccc 값도"z,Tue,Mon,Sun,Apr,Mar,Feb" 로 변함)
eee = ccc.splice(2,5,"x","xx","xxx");// 배열값 읽기후변환(eee 값은"Mon,Sun,Apr,Mar,Feb" )
//(ccc 값은"z,Tue,x,xx,xxx" 로 변함)
eee = ccc.unshift("1","2"); // 첫번째 배열추가후값(eee 값은"7" )
//(ccc 값은"1,2,z,Tue,x,xx,xxx" 로 변함)
sss = new Array(1,2,3); // 숫자 배열값 넣기
uuu = sss.toString(); // 문자로변환.결과는 1,2,3
vvv = uuu.toLowerCase();// 대문자를소문자로 변환.원래 값은 변경되지 않음
vvv = uuu.toUpperCase();// 소문자를대문자로 변환.원래 값은 변경되지 않음
xxx = Number("111") //숫자로 변환. 결과는 111
xxx = Number("aaa") //숫자로 변환. 결과는 NaN
xxx = Number(true)//숫자로 변환. 결과는 1
xxx = Number(false) //숫자로 변환. 결과는 0
----------------------------------------------------------------------------
cliparray = new Array(); // 무비클립을 배열로 저장하기
for (a=1; a<=3; a++){
cliparray[a] =_root["clip"+a];
cliparray[a].x =_root["clip"+a]._x;
cliparray[a].y =_root["clip"+a]._y;
trace(cliparray[a].x);
trace(cliparray[a].y);
}
----------------------------------------------------------------------------
myString = new String(); // 문자 변수초기화
myString = new String("가나다"); // 문자 넣기
tet="가나다"; myString = new String(tet);// tet변수 넣기
text0=myString.charAt(0);// text0 값은 "가"-1개 읽기
text1=myString.charAt(1);// text1 값은 "나"-1개 읽기
text2=myString.charAt(2);// text2 값은 "다"-1개 읽기
text3=myString.concat("라마","바사","다"); // text3 값은 "가나다라마바사다"-추가
text4=text3.substr(2,4); // text4 값은 "다라마바"-여러개 읽기
text5=text3.substring(2,4);// text5 값은 "다라"-여러개 읽기
text6=text3.slice(2,4);// text6 값은 "다라"-여러개 읽기
text7=myString.charCodeAt(1);// text7 값은45208- 문자를 코드화
text8="a" + String.fromCharCode(64) + "m"; // text8 값은 "a@m"- 코드를 문자화
text9= text3.indexOf("다");// text9 값은 2-문자위치
text10= text3.lastIndexOf("다"); // text10 값은 7-마지막 문자위치
text11= text3.length;// text11 값은 8-문자길이
text12= text3.split("나"); // text12 값은 "가,다라마바사다"-문자분리
text13= text6.concat(text3); // text13 값은 "다라가나다라마바사다"-문자합침
text14= text13.substr((text13.length-1),1);// text14 값은 "다"-마지막 문자 읽기
sss = myDate.toString();day = sss.substring(0,3); // 문자로변환
----------------------------------------------------------------------------
// aaa 문장을 bbb 배열로 저장하기// 문장을 배열로 저장하기
// 결과는 bbb[0]="a" bbb[1]="b" bbb[2]="c" bbb[3]="d" bbb[4]="e"
aaa = "a b c d e";
aaalen = aaa.length;
bbb = new Array();
for (a=0; a<=aaalen; a++){ bbb[a] = "";};
bbbno = 0; bbbchr = "";
for (a=0; a<=aaalen; a++){
if ( aaa.charAt(a) == " " ) {bbb[bbbno] = bbbchr; bbbno += 1; bbbchr = "";
} else { bbbchr += aaa.charAt(a); };
};
for (a=0; a<=bbbno; a++){trace( "*" + bbb[a] + "*" ) };
----------------------------------------------------------------------------
for (a=1; a<=22; a++) { // 텍스트 필드 글자속성
this["k"+(a)].textColor=0xff0000;
this["k"+(a)].border=true;
this["k"+(a)].borderColor=0xff0000;
this["k"+(a)].background=true;
this["k"+(a)].backgroundColor=0xffffff;
};
----------------------------------------------------------------------------
TextField.removeTextField(); // 텍스트 필드 삭제
----------------------------------------------------------------------------
createTextField ("instanceName", depth, x, y, width, height) // 텍스트 필드 생성
instanceName 새 텍스트 필드의 인스턴스 이름
depth 새 텍스트 필드의 깊이를 지정하는 양의 정수 (2 는 1를screen over)
x 새 텍스트 필드의 x 좌표를 지정하는 정수
y 새 텍스트 필드의 y 좌표를 지정하는 정수
width 새 텍스트 필드의 넓이를 지정하는 양의 정수
height 새 텍스트 필드의 높이를 지정하는 양의 정수
instanceName.type = "dynamic"; // 텍스트 필드의 기본 속성(dynamic 또는 input)
instanceName.autoSize = "false"; // (글자수에 맞게 테두리 크기 자동 조절 true false center right)
instanceName.border = false; // (테두리)
instanceName.borderColor = 0xff0000; // (테두리 색상)
instanceName.background = false; // (배경)
instanceName.backgroundColor=0xffffff; // (배경 색상)
instanceName.textColor = 0xff0000; // (글자 색상)
instanceName.multiline = false;// (한줄또는여러줄)
instanceName.selectable = true;// (텍스트 필드를 선택할 수 있는지 여부)
instanceName.maxChars = null;// (사용자가 입력할 수 있는 최대 문자 수) (null 이면 무한대)
instanceName.length = 0; // (글자 수)
instanceName._name = ""; // (인스턴스 이름)
instanceName.variable = "";// (변수 이름)
instanceName.html = false; // (html 태그 사용 여부)
instanceName.htmlText = "";// (html 태그)
instanceName.wordWrap = tr

+ Recent posts