달력만들기
date 객체의 개념
month 는 0부터 시작
달력 생성의 기초 알고리즘
달력 예제 코딩
var d: Date = new Date ( 2015, 3,1 ) // 월은 0부터 시작
for ( var i : int = 1 ; i <32 ; i ++)
{
d.date = i
if( d.date != 3 )
{
break;
}
trace( d.fullYear + "-" + (d.month + 1 ) + "-" + d.date);
}
generateCalendar( 2015,2);
만들어볼 기능
- 선택한 날짜가 다음 달을 보고 왔어도 선택되어 있는 기능
- 날씨 데이터와 날씨 아이콘 붙이기
package com.timo.calendar
{
import flash.display.Sprite;
import flash.events.MouseEvent;
/**
* 달력 클래스 2015.03.06
* @author hwani
*
*/
public class Calendar extends Sprite
{
public var currentDate : Date = new Date(); //현재 표시된 달력의 정보를 가진 객체 , 괄호가 비워져 있으므로 현재 값을 저장
private var arr: Array = []; //DayItem을 담을 배열
private var displaySkin:UI_DISPLAY = new UI_DISPLAY();
public function Calendar() // 함수를 호출하는 용도로만 사용
{
generateDayItems();
displayCalendar();
displayTopNavi();
}
/**
* DayItem 생성 함수 ( 박스 )
*
*/
private function generateDayItems() : void
{
for ( var i : int = 0 ; i <31 ; i ++)
{
var d: DayItem = new DayItem();
arr.push(d);
}
}
/**
*displayTopNavi 달력 상단 네비 생성 함수
*
*/
private function displayTopNavi() : void
{
displaySkin.x = 20;
displaySkin.y = 10;
addChild(displaySkin);
displaySkin.mcNext.addEventListener(MouseEvent.CLICK, onNext);
displaySkin.mcPrev.addEventListener(MouseEvent.CLICK , onPrev);
}
private function onNext ( e: MouseEvent ) : void
{
currentDate.month ++;
displayCalendar();
}
private function onPrev( e: MouseEvent ) :void
{
currentDate.month --;
displayCalendar();
}
/**
* 캘린더 표시 함수
*
*/
private function displayCalendar() : void
{
for(var i : int = 0 ; i <31 ; i++) if( contains( arr[i])) removeChild(arr[ i ]);
var d: Date = new Date(currentDate.fullYear, currentDate.month, 1);
var yPos : int = 50;
for( i = 1 ; i < 32 ; i++)
{
d.date = i;
if( d.month != currentDate.month ) break;
//trace ( d.fullYear + "-" + (d.month + 1 ) + "-" + d.date);
var item : DayItem = arr[ i -1 ];
addChild(item);
item.x = 10 + 30 * d.day;
if( d.day == 0 && i != 1) yPos += 30;
item. y = yPos;
item.date = String(i);
}
}
}//class
}//package
'코딩공부 > Action Script 3.0' 카테고리의 다른 글
타겟을 향해 날아가는 물체에 대한 예제 ( 미사일 ) (0) | 2015.03.13 |
---|---|
이론 정리 (0) | 2015.03.10 |
박스의 버튼을 누를 때마다 카운트를 하는 예제 (0) | 2015.03.05 |
전투신만들기 - 몬스터 생성하기 기초1 (0) | 2015.03.05 |
dispatchEvent와 비동기 방식 프로그래밍의 개념 (0) | 2015.03.04 |