org.kwis.msp.lwc
Class DateFieldComponent

java.lang.Object
  |
  +--org.kwis.msp.lwc.Component
        |
        +--org.kwis.msp.lwc.DateFieldComponent

public class DateFieldComponent
extends Component

DateFieldComponent는 날짜와 시간을 보여주는 필드를 화면에 표시해주고 이 값을 수정할 수 있습니다.

DateFieldComponent를 생성할 때 지정한 모드에 관계없이 시스템에 설정된 기본 TimeZoneDate를 사용하여 현재 시간과 날짜로 초기화된 데이타를 가지게 됩니다. 이 값은 getDate,setDate를 통해서 값을 얻어오거나 수정할 수 있습니다.

DateFieldComponent의 날짜와 시간은 지정한 모드에 따라 화면에 출력되고 그 값을 방향키 입력에 의해서 수정할 수 있습니다.

DateFieldComponent에서는 시간과 날짜를 지정하거나 수정 할 수 있는 3가지 타입의 모드를 제공합니다.

See Also:
Date, Calendar, TimeZone

Field Summary
static int MODE_DATE
          날자 표시모드.
static int MODE_TIME
          시간 표시모드.
static int MODE_TIME_DATE
          날자와 시간 표시모드.
 
Fields inherited from class org.kwis.msp.lwc.Component
bg, evtListener, evtListenerObj, fg, FOCUS_NOTIFY, h, HAS_FOCUS_MASK, INPUT_MASK, KEY_NOTIFY, KEY_PRESSED, KEY_RELEASED, KEY_REPEATED, KEY_TYPED, LAYOUT_BOTTOM, LAYOUT_HCENTER, LAYOUT_LEFT, LAYOUT_RIGHT, LAYOUT_TOP, LAYOUT_VCENTER, mask, parent, POINT_DRAGGED, POINT_PRESSED, POINT_RELEASED, POINTER_NOTIFY, POS_MASK, PREFER_SIZE_MASK, prefH, prefW, SHOW_NOTIFY, SIZE_MASK, VALID_MASK, w, x, y
 
Constructor Summary
DateFieldComponent(int mode)
          시스템의 기본 TimeZoneDate를 사용하여 현재 시간과 날짜로 초기화된 DateFieldComponent의 인스턴스를 생성합니다.
 
Method Summary
 Date getDate()
          DateFieldComponent에서 현재 설정되어 있는 날짜 정보를 가지고 있는 Date객체를 얻어옵니다.
 int getMode()
          DateFieldComponent에 설정된 모드를 얻어 옵니다.
 int getPreferredHeight()
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredHeight(int w)
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredWidth()
          컴포넌트의 적절한 폭을 결정합니다.
 String getStringValue(int mode)
          인자로 주어진 모드값에 따라 날짜나 시간 값을 스트링 형태로 얻어 옵니다.
 TimeZone getTimeZone()
          DateFieldComponent에 설정되어 있는 TimeZone을 얻어 옵니다.
 boolean keyNotify(int type, int key)
          키 입력을 받으면 호출됩니다.
 void paintContent(Graphics g)
          내부를 칠합니다.
 void setDate(Date dt)
          DateFieldComponentDate를 설정합니다.
 void setMode(int mode)
          DateFieldComponent의 모드를 설정합니다.
 void setTimeZone(TimeZone tz)
          DateFieldComponentTimeZone을 설정합니다.
protected  void showNotify(boolean bShow)
          화면의 내용이 보이면 호출됩니다.
 
Methods inherited from class org.kwis.msp.lwc.Component
calcPreferredSize, canHandleInput, configure, focusNotify, getBackground, getCard, getForeground, getHeight, getWidth, getX, getXOnScreen, getY, getYOnScreen, hasFocus, invalidate, isShown, isValid, layout, pointerNotify, processEvent, repaint, repaint, serviceRepaints, setBackground, setEventListener, setFocus, setForeground, toString, validate
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MODE_TIME

public static final int MODE_TIME
시간 표시모드. 이 모드를 사용하면 DateFieldComponent에서는 시간을 보여주는 필드를 화면에 출력하고 시간을 수정할 수 있습니다.

MODE_TIME값으로 '0'이 지정되어 있습니다.


MODE_DATE

public static final int MODE_DATE
날자 표시모드. 이 모드를 사용하면 DateFieldComponent에서는 날짜를 보여주는 필드를 화면에 출력하고 날짜를 수정할 수 있습니다.

MODE_DATE값으로 '1'이 지정되어 있습니다.


MODE_TIME_DATE

public static final int MODE_TIME_DATE
날자와 시간 표시모드. 이 모드를 사용하면 DateFieldComponent에서는 시간과 날짜을 보여주는 필드를 화면에 출력하고 시간과 날짜를 수정할 수 있습니다.

MODE_TIME_DATE값으로 '2'이 지정되어 있습니다.

Constructor Detail

DateFieldComponent

public DateFieldComponent(int mode)
시스템의 기본 TimeZoneDate를 사용하여 현재 시간과 날짜로 초기화된 DateFieldComponent의 인스턴스를 생성합니다.

주어진 모드값에 따라 사용되는 필드가 결정됩니다. 모드값이 MODE_TIME인 경우 시간를 보여주는 필드를 화면에 출력하고 시간을 수정할 수 있습니다 . MODE_DATE이 모드값으로 지정된 경우 날짜를 보여주는 필드를 화면에 출력하고 날짜를 수정할 수 있습니다. MODE_TIME_DATE는 시간과 날짜를 보여주는 필드를 화면에 출력해 주고 시간과 날짜를 모두 수정 할 수 있습니다.

위의 모드 이외의 값을 모드로 지정하면 IllegalArgumentException 이 발생합니다.
Parameters:
mode - 생성할 DateFieldComponent의 모드값
Throws:
IllegalArgumentException - 선언된 3가지모드 - MODE_TIME,MODE_DATE,MODE_DATE- 외의 값을 지정한 경우
See Also:
MODE_TIME, MODE_DATE, MODE_TIME_DATE, TimeZone, Date
Method Detail

getDate

public Date getDate()
DateFieldComponent에서 현재 설정되어 있는 날짜 정보를 가지고 있는 Date객체를 얻어옵니다. 이 값은 지정된 모드에 관계없이 현재 설정된 Date객체를 리턴합니다. DateFieldComponent생성시 기본적으로 설정된 Date는 1970/1/00:00:00 GMT 를 기준으로 계산된 milliseconds단위의 시간값을 가지고 있습니다.
See Also:
setDate(Date dt), Date

getMode

public int getMode()
DateFieldComponent에 설정된 모드를 얻어 옵니다.
See Also:
setMode(int mode)

getTimeZone

public TimeZone getTimeZone()
DateFieldComponent에 설정되어 있는 TimeZone을 얻어 옵니다. 기본적으로 설정된 TimeZone은 시스템의 기본 TimeZone이며, TimeZone.TimeZone.getDefault()를 통해 생성되어집니다.
Returns:
DateFieldComponent에 설정된 TimeZone
See Also:
setTimeZone(TimeZone tz), TimeZone

showNotify

protected void showNotify(boolean bShow)
Description copied from class: Component
화면의 내용이 보이면 호출됩니다. addComponentremoveComponent에 의해서 불리거나, 자신의 맨 상위의 부모 컴포넌트(ShellComponent)가 show에 의해서 화면에 나타날 때 호출됩니다.
Overrides:
showNotify in class Component
Following copied from class: org.kwis.msp.lwc.Component
Parameters:
bShow - 컴포넌트가 나타나는지 안나타나는지 여부

setDate

public void setDate(Date dt)
DateFieldComponentDate를 설정합니다. 인자값이 null인 경우 NullPointerException이 발생합니다. 기본적으로 설정된 Date는 1970/1/00:00:00 GMT 를 기준으로 계산된 milliseconds단위의 시간값을 가지고 있습니다.
Parameters:
dt - DateFieldComponent에 설정할 Date객체
Throws:
NullPointerException - Date가 null인경우
See Also:
getDate(), Date

setMode

public void setMode(int mode)
DateFieldComponent의 모드를 설정합니다. 설정 가능한 값은 MODE_TIME, MODE_DATE, MODE_TIME_DATE이며, 이와의 값을 설정한 경우 IllegalArgumentException이 발생합니다.
Parameters:
mode - DateFieldComponent에 설정할 모드
Throws:
IllegalArgumentException - 지정된 모드외의 값이 인자로 주어진 경우
See Also:
getMode(), MODE_TIME, MODE_DATE, MODE_TIME_DATE

setTimeZone

public void setTimeZone(TimeZone tz)
DateFieldComponentTimeZone을 설정합니다. 기본적으로 설정된 TimeZone은 시스템의 기본 TimeZone이며, TimeZone.TimeZone.getDefault()를 통해 생성되어집니다.
Parameters:
tz - DateFieldComponent에 설정할 TimeZone
Throws:
NullPointerException - TimeZone이 null인경우
See Also:
getTimeZone(), TimeZone

getPreferredHeight

public int getPreferredHeight(int w)
Description copied from class: Component
컴포넌트의 적절한 높이를 결정합니다. 지정된 제한된 폭을 가질 경우의 컴포넌트의 높이를 돌려줍니다. 만일 LabelComponentTextFieldComponent, TextAreaComponent와 같이 포맷팅이 가능한 컴포넌트인 경우에는 가변 폭을 가질수가 있습니다. 가변 폭을 가지게 되면, 폭에 따라서 높이가 달라지게 됩니다. 이때 이 함수를 통해서 컴포넌트의 높이를 얻어 옵니다. 만일, w가 -1이 면 폭에 제한이 없는 것으로 계산됩니다.
Overrides:
getPreferredHeight in class Component
Following copied from class: org.kwis.msp.lwc.Component
Parameters:
w - 가변폭.
Returns:
컴포넌트의 높이.
, TimeZone

getPreferredHeight

public int getPreferredHeight(int w)
Description copied from class: Component
而댄щ„Œ