Dday_02.mxml========================================================================================
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="300" height="250">
<mx:Style>
Application{
backgroundColor : #ffffff;
fontSize : 12;
}
</mx:Style>
<mx:Script>
<![CDATA[
import mx.controls.*;
import mx.validators.*;
import mx.events.*;
[Bindable]
private var result:String;
private var vResult:ValidationResultEvent;
private function getDday(_yy:int, _mm:int, _dd:int):int
{
var Dday:Date = new Date(_yy, _mm-1, _dd);
var now:Date = new Date();
var diff:Number = Dday.getTime() - now.getTime();
return Math.abs(diff/1000/60/60/24);
}
private function NumberValidat():Boolean
{
var listeners:Array = [txtYear, txtMonth, txtDay];
var isValid:Boolean = true;
for each (var listener:Object in listeners)
{
numVal.listener = listener;
vResult = numVal.validate(listener.text);
if (vResult.type == ValidationResultEvent.INVALID)
{
isValid = false;
}
}
return isValid;
}
private function btnClick():void
{
var isValid:Boolean = NumberValidat();
if(!isValid)
{
return;
}
else if(int(txtYear.text)>2008 || int(txtMonth.text)>12 || int(txtDay.text)>31){
Alert.show("입력값을 다시 한번 확인해 주세요.");
}
else{
var year:int = int(txtYear.text);
var month:int = int(txtMonth.text);
var day:int = int(txtDay.text);
result = getDday(year, month, day).toString();
viewstack1.selectedIndex = 1;
}
}
]]>
</mx:Script>
<mx:NumberValidator id="numVal" property="text"
allowNegative="false" domain="int"
decimalPointCountError="숫자(정수)만 입력 가능합니다."
invalidCharError="숫자(정수)만 입력 가능합니다."
negativeError="숫자(정수)만 입력 가능합니다."
requiredFieldError="필수입력 항목입니다."
separationError="숫자(정수)만 입력 가능합니다." />
<mx:ViewStack x="0" y="0" id="viewstack1" width="100%" height="100%">
<mx:Canvas width="100%" height="100%" show="{txtYear.text=txtMonth.text=txtDay.text=''}">
<mx:Label x="10" y="10" text="생일을 입력하세요" fontWeight="bold"/>
<mx:TextInput x="10" y="106" width="60" maxChars="4" id="txtYear"/>
<mx:TextInput x="108" y="106" width="40" maxChars="2" id="txtMonth"/>
<mx:TextInput x="186" y="106" width="40" maxChars="2" id="txtDay"/>
<mx:Label x="78" y="108" text="년"/>
<mx:Label x="156" y="108" text="월"/>
<mx:Label x="234" y="108" text="일"/>
<mx:Button x="232" y="218" label="Click" buttonMode="true" click="btnClick()"/>
</mx:Canvas>
<mx:Canvas width="100%" height="100%">
<mx:HBox x="0" y="106" width="100%" horizontalAlign="center">
<mx:Label text="당신은 지금까지"/>
<mx:Text text="{result+'일'}"/>
<mx:Label text="살았습니다."/>
</mx:HBox>
<mx:Button x="232" y="218" label="Back" buttonMode="true" click="{viewstack1.selectedIndex=0}"/>
</mx:Canvas>
</mx:ViewStack>
</mx:Application>
=====================================================================================================
'OM' 카테고리의 다른 글
영어 학습 컨텐츠 (0) | 2008.02.22 |
---|---|
keyUtil (0) | 2008.02.09 |
타자게임 (0) | 2008.02.09 |
달력을 이용한 다이어리 (0) | 2008.02.08 |
달력 (0) | 2008.02.07 |
D-day 구하기 1 (0) | 2008.02.05 |
아날로그 시계 (0) | 2008.02.04 |
디지털 시계 (0) | 2008.02.03 |
동영상 플레이어 (0) | 2008.01.11 |