반응형
# 플래시에서 삭제할 수 있는 인스턴스의 최상위 뎁스는?
1048575 라고 한다. 어떤 의미인지는 잘 모르겠지만 이 이상의 뎁스번호를 갖고 있는 인스턴스는 삭제가 되지 않는다고 한다.

# 여유클래스란?
Tween을 사용할 때 효과를 지정하는 클래스라고 생각하면 될듯하다.
점점 빠르게, 점점 느리게,... 등등의 효과를 지정해주는 클래스 패키지를 말하는 듯... 왜 여유클래스라고 하는지 정확한 뜻은 찾을 수가 없다.

# import로 전체를 가져와도 사용되지 않은 클래스는 swf파일에 포함되지 않는다.

보통 Blurfiler를 사용할 때 정확히는 flash.filters.Blurfilter 이지만 flash.filters.*로 filter 패키지에 있는 클래서 전부를 가져온다. 하지만 swf로 컴파일 시에는 사용되지 않는 클래스는 포함이 안된다고 하니 전체다 가져와서 이것져것 사용해보면서 여러 효과를 연구하는 것이 더 좋은 방법인듯하다.

# 패키지 모음
  -> mx/transition.* : 움직임을 만드는 easing 패키지를 포함하고 있으며, 화면전환 효과를 제어하는TransitionManager 클래스와 움직임을 제어하는 Tween 클래스 그리고 화면전환 효과를 생성하는 10개의 클래스가 들어있습니다
  -> flash.external.* : ExternalInterface 클래스 사용하기 위해 필요
  -> flash.display.* : BitmapData 클래스 사용 위해 필요
  -> flash.geom.Rectangle : Rectangle 클래스 사용 위해 필요
  -> flash.geom.ColorTransform : ColorTransform 클래스 사용 위해 필요
  -> flash.filters.* : 브럴효과를 위해 필요, Blurfilter 등등


# 레퍼런스에서 []는 선택사항이다.
레퍼런스를 보다보면 []로 둘러쌓인 것들이 있는데 입력해도되고 안해도 되는 파라미터를 말하는 경우이다.

# getNextHighestDepth()

현재 스테이지에 나와있는 오브젝트들의 Depths중에 가장 큰 Depths 에서 +1 한 값을 가져온다.
  -> 사용예) _root.aa.swapDepths(getNextHighestDepth()); // aa 가 젤 위에 있게된다.

# gettimer()
플래시 무비가 시작된 이후의 시간을 밀리초단위 반환, 전역함수

# MovieClipLoader
예전에는 loadMovie를 많이 사용했지만 전용 클래스가 생겼다.
MovieClipLoader는 로드의 시작과 종료, 진행, 오류까지 실시간으로 정보를 얻을 수 있다.
반응형

'Flash Story' 카테고리의 다른 글

매일 플래시 액션스크립트 - 5  (0) 2007.03.19
매일 플래시 액션스크립트 - 3  (0) 2007.03.17
매일 플래시 액션스크립트 - 2  (0) 2007.03.16
반응형
# 플래시와 자바스크립트 통신
예전에는 FScommand로 통신했다고 한다. 어떻게 하는지는 잘 모르겠지만...
이제는 ExternalInterface라는 객체가 생겨서 편리하게 통신할 수 있다고 한다.

-> 플래시에서 자바스크립트 호출하기
: ExternalInterface.call("자바스크립트 함수", "매개변수");

-> 자바에서 플래시 함수 호출
:일단 플래시에서 호출 당할 함수를 지정하고 자바스크립트에서 그 함수를 호출하는 것이다.
1. 플래시: ExternalInterface.addCallback("호출이름", 인스턴스, "실제 실행함수");
2. HTML: <embed>와 <param> 태그에서 ID 및 name을 임의로 지정
3. 자바스크립트: 플래시 파일의 ID 또는 Name으로 접근 후 호출이름으로 호출함.
    - thisMovie("임의 이름").호출이름();

# 사용자 화면 해상도 알아내기
자바스크립트: window.screen.width  window.screen.height

# 브라우저 창 크기 및 위치 변경
크기 변경(자바스크립트): window.resizeTo(width, height)
위치 변경(자바스크립트): window.moveTo(X, Y)

부드럽게 이동시키려면 플래시에서 빠른 시간내에 계속적으로 변경시키면 된다. 보통 setInterval()을 사용하는 듯하다. 하지만 요즘은 탭방식의 브라우저를 많이 사용하기에 예전 처럼 팝업 창끼리 서로 통신하며 위치와 크기가 변경되는 무비는 의미가 없어지고 있다.

# 플래시 클릭안하고 바로 활성화 하기
요즘에는 플래시를 사용하려면 한번 클릭을 해야한다. '이 컨트롤을 활성화하여 사용하려면 클릭하십시오'라는 메시지가 나오고 클릭을 해줘야 플래시가 정상작동한다. 다른것도 귀찮지만 플래시메뉴라면 사용성에 치명적인 귀차니즘이 발생한다. 06년에부터 패치가 적용되서 익스플로러에서 이렇게 나오는데 여러 해결방법이 있지만 가장 좋은 방식은 역시 자바스크립트의 document.write()로 플래시를 넣는 <embed>와 <param>태그를 넣어 주는 것이다.
 -> <embed>와 <param>태그를 뿌려주는 함수가 작성된 .js파일을 작성하고 -> html에서 불러온다 -> 태그를 생성해주는 함수사용한다.

# 다이나믹 텍스트 필드의 크기를 변경했을 때 글자 스케일 변화하기
다이나믹 텍스트 필드의 세로만 변경시켰을 경우 글자가 홀죽해 지는 것이아니라 줄어든 영역만큼 글자가 짤린다. 이런 방식말고 전체 글자가 다 보이면서 홀죽하게 변경하려면 글자를 임베디드 시켜야 한다. 영문은 폰트용량이 얼마안돼서 별로 상관없지만 한글 폰트는 임베디드를 심각히 고려해야한다. 보통 100kb가 넘어가니...
그리고 정적텍스트를 애니매이션 옵션을 주면 폰트 임베디드 필요없이 크기에 따라서 글자 스케일이 변한다. 이것은 애니메이션 방식으로 지정하면 글꼴의 외곽선 정보를 저장하기 때문에 가능하다.(이것도 역시 외곽선정보만큼의 용량추가는 있다.)

# setInterval()이 반환하는 값은?
각각의 setInterval()을 식별할 수 있는 정수를 반환한다.
그래서  setInterval()을 종료해야 할 경우 이런 방식으로 사용한다.
-> intervalID = setInterval() // setInterval()을 실행하고 식별번호를 저장한다.
-> clearInterval(intervalID) // setInterval()을 종료한다.

그런데 여기서 intervalID에는 어떤 값이 저장될까?
그냥 정수가 저장된다. 1, 2, 3,... 등등...
따라서 단순하게 clearInterval(1) 이런식으로도 종료는 가능하다.

# <script type>과 <script language>는 어떻게 다른가?
예전 방식이 <script language="javascript">
현재 권장 방식이<script type="text/javascript"> 이다. 결국은 같지만 후자를 사용하는 것이 좋다는 말...
-> <script>태그로 둘러쌓일 내용이 텍스트인 자바스크립트이다.. 를 의미한다.라고 어느 블로그에서 본 것 같다.
반응형

'Flash Story' 카테고리의 다른 글

매일 플래시 액션스크립트 - 4  (0) 2007.03.18
매일 플래시 액션스크립트 - 2  (0) 2007.03.16
매일 플래시 액션스크립트 - 1  (2) 2007.03.16
반응형
# if()에서 조건으로 함수를 넣으면 함수 실행이 완료된 후에 if(){}의 명령문이 실행된다.
function yesNo() {
  return true;
}
if ( yesNo() ) {...}
이렇게 하면 함수가 실행된 후 if(){}의 명령문이 실행된다. 함수 실행이 종료된 후에 명령어를 실행해야 할때 사용 할 수있다.

# 함수의 시작과 종료 시점을 출력한다.
함수를 작성할 때는 시작과 끝에 trace()문을 넣어서 언제 실행되고 언제 종료되는지 알 수 있게 하고 실행이 완료됐는지를 알려주는 return 값을 넣어 실행완료를 출력해야한다. 물론 리턴값이 없는 함수도 있지만 가능하면 리턴값을 반환하게 해서 정상실행 여부를 확인하도록 코딩습관을 들이자.

# attachMovie는 무비 생성 후 참조주소를 반환한다.
하지만 반환했다고 해서 생성된 인스턴스 내에 있는 액션까지 완료가 됐다는 것은 아니다. 무비클립은 생성했지만 그 무비클립은 생성된 후 첫 프래임이 실행된다. 하지만 attachMovie()는 생성만 되면 참조주소를 반환한다. 따라서 생성된 무비클립의 생성 후 액션 실행까지 완료 시점은 따로 리턴값을 주어야 한다.

# html에서 swf로 파라미터 전달
예전 방식
<embed>와 <param> 태그에 보면 플래시 파일 주소가 있는데 그곳에 URL에 변수 넘기는 GET방식 처럼 넘겼다.
-> test.swf?value1=123&value2=456

현재 방식
FlashVars라는 속성이 생겼다. 클래스 같은 것은 아닌 것 같고 <embed>와 <param>에서 flashvars라는 이름으로 넘어오는 속성의 값을 파라미터(변수)로 인식해서 사용할 수 있게 하는 것 같다.
-> <param name="flashvars" value="value1=123&value2=456">
-> <embed flashvars="value1=123&value2=456">
반응형

'Flash Story' 카테고리의 다른 글

매일 플래시 액션스크립트 - 4  (0) 2007.03.18
매일 플래시 액션스크립트 - 3  (0) 2007.03.17
매일 플래시 액션스크립트 - 1  (2) 2007.03.16
반응형
하루하루 공부한 것들을 정리하자... 아직은 허접하지만 꾸준히한다면 스스로 개발자라고 소개할 날이 오겠지...

# random() 함수가 변경되어서 예전 방식은 이제 버리자
예전에는 random(숫자범위) 이라는 전역함수로 사용했지만 mx 때부터인가? 바뀌었단다...

Math.floor( Math.random()*(최대-최소)+최소) 이렇게 Math.random() 매소드로 사용한다.
결국은 'Math.random()*숫자범위'와 같다고 보면 되지만 의사난수로 반환하기에 소수점이 포함된다. 따라서 Math.floor()로 소수점 이하는 버려야한다.

Math.floor()는 내림값을 반환하는 매서드이다.

어떤 경우에 좋은걸까? 왜 더 귀찮게 바뀐거지? 음...

# 입력텍스트 박스에 입력글자를 제한하는 속성 restrict가 있다.
Textfield.restrict 로 입력박스에 입력글자를 제한할 수 있다. 영문만, 한글만, 대문자만.. 등등으로 활용가능하다.

# charAt(index)은 인뎃스 위치의 글자를 반환한다.
String.charAt(글자차례번호) 로 해당 위치의 글자를 반환 받는다.

# 코드힌트(접미사)에 대해...
인스턴스와 변수등의 이름에 지정하면 해당 인스턴스가 어떤 역할을 하는지 코드만 보고도 직관적으로 알 수 있고 코드작성중에 코드 힌트가 나타나서 편리하게 코딩할 수 있다.
  • _array (Array)
  • _btn (Button)
  • _cam (Camera)
  • _color (Color)
  • _cm (ContextMenu)
  • _cmi (ContextMenuItem)
  • _date (Date)
  • _err (Error)
  • _lv (LoadVars)
  • _lc (LocalConnection)
  • _mic (Microphone)
  • _mc (MovieClip)
  • _mcl (MovieClipLoader)
  • _pj (PrintJob)
  • _nc (NetConnection)
  • _ns (NetStream)
  • _so (SharedObject)
  • _sound (Sound)
  • _str (String )
  • _txt (TextField)
  • _fmt (TextFormat)
  • _video (Video)
  • _xml (XML)
  • _xmlnode (XMLNode)
  • _xmlsocket (XMLSocket)

  • # 데이터 유형에 대해...
    데이터 유형을 지정해주면 컴파일시 데이터유형 오류를 발견 할 수 있고 코드를 보고 직관적으로 어떤 유형의 데이터를 사용하는지 알 수 있다.

    데이터 유형

    설명

    Boolean

    원시 값. Boolean 데이터 유형truefalse의 두 가지 값으로 구성됩니다. 이 유형의 변수에는 다른 값을 사용할 수 없습니다. 선언되었지만 초기화되지 않은 Boolean 변수의 기본 값은 false입니다. 자세한 내용은 Boolean 데이터 유형을(를) 참조하십시오.

    MovieClip

    복합 값. MovieClip 데이터 유형에서는 MovieClip 클래스의 메서드를 사용하여 무비 클립 심볼을 제어할 수 있습니다. 자세한 내용은 MovieClip 데이터 유형을(를) 참조하십시오.

    null

    원시 값. null 데이터 유형null 값을 보유합니다. 이 값은 값 없음 즉, 데이터가 없음을 의미합니다. 다양한 상황에서 속성이나 변수에 아직 값을 지정하지 않았음을 나타내기 위해 null 값을 지정할 수 있습니다. null 데이터 유형은 복합 데이터 유형을 정의하는 모든 클래스에 대한 기본 데이터 유형입니다. 단, Object 클래스는 예외이며 이 클래스의 기본 데이터 유형undefined입니다. 자세한 내용은 null 데이터 유형을(를) 참조하십시오.

    Number

    원시 값. 이 데이터 유형은 정수, 부호 없는 정수, 부동 소수점 숫자 등을 나타낼 수 있습니다. 부동 소수점 숫자를 저장하려면 숫자 안에 소수점을 넣어야 합니다. 소수점이 없는 숫자는 정수로 저장됩니다. Number 데이터 유형Number.MAX_VALUE (최대값)에서 Number.MIN_VALUE(최소값)까지의 값을 저장할 수 있습니다. 자세한 내용은 ActionScript 2.0 언어 참조 설명서 및 Number 데이터 유형을(를) 참조하십시오.

    Object

    복합 값. Object 데이터 유형은 Object 클래스에 의해 정의됩니다. Object 클래스는 ActionScript의 모든 클래스 정의에 대한 기본 클래스로 작동하며 각 객체간에 서로를 포함할 수 있도록(즉, 중첩된 객체) 합니다. 자세한 내용은 Object 데이터 유형을(를) 참조하십시오.

    String

    원시 값. String 데이터 유형은 일련의 16비트 문자들을 나타내며 여기에는 글자, 숫자, 구두점 표시 등이 포함될 수 있습니다. String 값은 UTF-16 형식을 사용하여 유니코드 문자로 저장됩니다. String 값의 연산은 새 문자열 인스턴스를 반환합니다. 자세한 내용은 String 데이터 유형을(를) 참조하십시오.

    undefined

    원시 값. undefined 데이터 유형undefined라는 하나의 값만 보유합니다. 이것은 Object 클래스의 인스턴스에 대한 기본 값입니다. Object 클래스에 속하는 변수에는 undefined 값만 지정할 수 있습니다. 자세한 내용은 undefined 데이터 유형을(를) 참조하십시오.

    Void

    복합 값. Void 데이터 유형void라는 하나의 값만 보유할 수 있습니다. 이 데이터 유형을 사용하면 값을 반환하지 않는 함수를 지정할 수 있습니다. Void는 원시 Void 데이터 유형을 참조하는 복합 데이터 유형입니다. 자세한 내용은 Void 데이터 유형을(를) 참조하십시오.


    # ESC 단축키에 대해...

    gotoAndPlay [Esc-gp]

    gotoAndStop [Esc-gs]

    nextFrame [Esc-nf]

    nextScene [Esc-ns]

    play [Esc-pl]

    prevFrame [Esc-pf]

    prevScene [Esc-ps]

    stop [Esc-st]

    stopAllSounds [Esc-ss]


    fscommand [Esc-fs]

    getURL [Esc-gu]

    loadMovie [Esc-lm]

    loadMovieNum [Esc-ln]

    loadVariables [Esc-lv]

    loadVariablesNum [Esc-vn]

    unloadMovie [Esc-um]

    unloadMovieNum [Esc-un]


    print [Esc-pr]

    printAsBitmap [Esc-pb]

    printAsBitmapNum [Esc-bn]

    printNum [Esc-pn]


    duplicateMovieClip [Esc-dm]

    on () {} [Esc-on]

    onClipEvent () {} [Esc-oc]

    removeMovieClip [Esc-rm]

    setProperty [Esc-sp]

    startDrag [Esc-dr]

    stopDrag [Esc-sd]

    break [Esc-br]

    case condition [Esc-ce]

    continue [Esc-co]

    default [Esc-dt]

    do {} while () [Esc-do]

    } else { [Esc-el]

    } else if () { [Esc-ei]

    for () {} [Esc-fr]

    for () {} [Esc-fi]   < for..in

    if () {} [Esc-if]

    switch () {} [Esc-sw]

    while () {} [Esc-wh]

    catch () {} [Esc-ch]

    throw [Esc-th]

    try {} [Esc-ty]

    function  () {} [Esc-fn]

    return [Esc-rt]


    #initclip [Esc-ic]

    #endinitclip [Esc-ec]

    #include "" [Esc-in]


    call [Esc-ca]

    ifFrameLoaded () {} [Esc-il]

    tellTarget () {} [Esc-tt]

    toggleHighQuality [Esc-tq]


    trace [esc-tr]

    class [esc-cl]

    import [esc-ip]

    interface [esc-it]


    반응형

    'Flash Story' 카테고리의 다른 글

    매일 플래시 액션스크립트 - 4  (0) 2007.03.18
    매일 플래시 액션스크립트 - 3  (0) 2007.03.17
    매일 플래시 액션스크립트 - 2  (0) 2007.03.16

    + Recent posts