엑스플랫폼 쇼케이스

[엑스플랫폼] 쇼케이스 따라하기 (6) - 계산기

아이야이야 2012. 1. 6. 11:02
Application > Calculator

따로 계산기 기능을 엑스플랫폼에서 제공하는 것은 아니고
버튼과 이벤트 처리로 계산기 기능을 구현한 내용입니다.
쇼케이스에서 전체 소스를 제공하기 때문에 내용을 보실 수 있습니다.

스크립트만 빼면 주석까지 500라인 정도가 되네요.
이번 내용에서는 주요 스크립트를 살펴보도록 하겠습니다.


function btn_OnClick(obj)
- 모든 버튼이 btn_OnClick 하나의 이벤트로 연결됩니다.
원래 onclick 이벤트는 클릭된 오브젝트와 ClickEventInfo를 같이 넘기는데 ClickEventInfo 는 처리하지 않고 있네요.
오브젝트에 넘어온 텍스트값을 받아서 switch 문에서 각 작업별로 분기를 해줍니다.

function CorPopup_onkeydown
- 화면에서 키 입력시에도 처리를 해줍니다.
폼에서 onkeydown 이벤트를 사용하고 KeyEventInfo 로 넘어오는 keycode값을 가지고 분기하여 처리합니다.
KeyEventInfo를 처리할때는 alt, ctrl, shift 키에 대해서는 별도로 속성을 체크하네요.

변수
- 다음과 같은 변수를 체크합니다.
var fv_PushNum      = 0;    // 숫자를 누른 상태
var fv_PushOperator = 1;    // 연산자를(+,-,*,/) 누른 상태
var fv_PushEqual    = 2;    // '='를 누른 상태
var fv_IsDecimalPoint;      // 소수점여부
var fv_Number;              // 출력장체 표시된 숫자
var fv_Result;              // 연산 결과
var fv_Memory;              // 메모리 저장 변수
var fv_IdxDecimalPoint;     // 소수점 Index
var fv_PreOperator;         // 이전에 누른 연산자
var fv_ChkStatus;           // 숫자,'=',연산자 상태 변수
var fv_FlagMemory;          // 메모리 사용 상태
var fv_IsPushDot;           // 소수점를 누른 상태

http://cafe.naver.com/xplatform101/152