고급 메뉴바를 위해서는 여러가지 움직임등도 알아야 하지만 반드시 기본적으로 알아야 할 것이 for
문과 this._name 입니다. 위 2가지를 모르면 고급 메뉴바를 만들더라도 엄청 코딩이 길어지게 되면서 각 메뉴마다 다 액션을 걸어
줘야 하는 노가다를 해야만 합니다.
먼저 for 문에 대해서 자세히 알아보겠습니다. for 문이라는 것이 없으면 코딩도 역시 노가다가
될 수 밖에 없습니다.
예를 들어 볼께요..
버튼이 5개가 있습니다.. 각각의 버튼의 이름은 bn1, bn2, bn3, bn4, bn5 라고
하겠습니다. 그리고 그 버튼을 눌렀다 땠을때 메인타임라인에 있는 m0 라는 무비클립의 1프레임, 2프레임, 3프레임,
4프레임, 5프레임으로 가서 멈춰라는 실행문을 코딩한다고 생각해요.
for 문을 알지 못한다면 아래 보기1) 처럼 코딩을 해야 합니다.
네..이렇게 코딩하면 됩니다...... 5개 정도는 가뿐하게 타자 연습한다고 생각하시고 치면
됩니다. 귀차니즘 발동하면 복사해서 붙여넣기 하고 숫자만 바꿔주면 됩니다. 하지만 버튼이 만약 30개 정도
된다면.... 복사해서 붙혀 넣기도 넘 힘듭니다...
이럴때 for 문을 활용하면 됩니다.
먼저 for 문의 형식부터 정확하게 인식 합니다.
기본형식은 보기2)와 같아요
보기2)를 보면 어떤 뜻인지 감이 안오죠?
실제로 쓰인 예를 들어 설명 해볼께요.
그럼 결과를 보죠..
처음 한번 실행하면 i=0 부터 시작해서
조건문에서 i의 값이 조건을 만족하는지 보게 됩니다. 만족하면 실행하고 만족하지 않으면 더 이상
실행하지 않습니다. 조건을 만족하죠?
그래서 실행할 액션인 trace(i) 를 실행합니다. 따라서 0 이라는 숫자를
output창에 보여주겠죠
그리고 증가치의 숫자만큼 i 의 값을 증가 시킵니다.
만약 증가치가 i++ 이 아니라 i=i+2 라고 적으면 i 의 값은 2씩 증가
됩니다. 여기서는 i++ 이니깐 1씩 증가시키게 되죠
그럼 i의 값은 1을 가지게 됩니다.
조건문을 만족하는지 봅니다. 만족하죠? 그래서 또 실행할 액션을
실행합니다.
따라서 1 이라는 숫자를 output창에 보여줍니다.
또 증가치에 따라 i 의 값을 증가시켜 이번에는 i 의 값이 2를 가지게 됩니다.
조건 만족 합니까? 조건 만족 합니다.
따라서 2라는 숫자를 output창에 보여줍니다.
또 증가치에 따라 i 의 값을 증가시켜 이번에는 i 의 값이 3을 가지게 됩니다
조건 만족해요? ..안 합니다.
i 의 값이 3보다 작아라고 했는데...i 의 값이 3이랑 같습니다.
따라서 조건을 만족 시키지 않기 때문에 더 이상 실행할 액션을 실행하지 않게
됩니다.
이제 for 문에 대해서는 잘 아쉴껍니다.
자 그럼 보기1)을 for 문으로 바꿔봐요.
스크롤 압박을 느끼기 때문에 다시 보기1)을 적어 보겠습니다.
위 보기1) 을 혼자서 한 번 for 문으로 바꿔보세요.. 혼자서도 잘 할꺼야...♬ 혼자서도 잘
할꺼야.♬..흐흐..이 노래 아시죠? tv 유치원 주제곡 입니다..
보기3) 이나 보기4) 처럼 하셨어요? 보기3) 이나 보기4) 처럼 하셨으면 for 문을
완전히 이해 하신겁니다.
["bn"+i]가
이해 안가시면 앞의 메뉴 만들기 (1) [ ] 글을 읽으세요
그러나..........
보기3)처럼 하게 되면 우리가 원하는 결과가 나오지 않습니다..ㅠ.ㅠ
결론부터 말하면 버튼을 누르게 되면 m0 라는 무비클립의 6 번 프레임으로 가기 떄문에 우리가
원하는 프레임에 가지 않게 됩니다.
저도 첨에는 저렇게 했습니다..
근데 안 되는 겁니다...왜 안 되는지 3일 동안 고생해서 알아냈습니다. 컴퓨터는 거짓말을
하지 않습니다. 왜 그런지 보죠..