org.kwis.msp.lwc
Class ProgressComponent

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

public class ProgressComponent
extends Component

프로그래스 컴퍼넌트는 진행상태등을 나타내기 위해 사용하는 콤포넌트입니다. Interactive NoneInteractive두가지 모드가 있으며 생성시에 결정됩니다. Interactive의 경우 사용자의 키 입력을 받아 setStep에서 정의 된 값만큼 증가 혹은 감소하게 됩니다. NoneInteractive모드에서는 사용자의 입력은 받지 않으며 setValue에 의해 값이 변경 됩니다. 기본적으로 step값은 1로 되어 있으며 setStep함수에 의해 변경 가능합니다. ProgressComponent의 최소값은 0으로 고정되어 있으며 최대값만 변경 가능합니다.


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
ProgressComponent(boolean bInteractive, int max)
          생성자함수 0을 최소값으로 하는 새로운 프로그래스 콤포넌트를 만든다.
 
Method Summary
 int getMaxValue()
          설정되어 있는 최대값을 구하는 함수.
 int getPreferredHeight()
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredHeight(int w)
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredWidth()
          컴포넌트의 적절한 폭을 결정합니다.
 int getStep()
          프로그래스바의 증감 단위를 구합니다
 int getValue()
          프로그래스의 설정되어 있는 현재 값을 구하는 함수.
 boolean keyNotify(int type, int key)
          키 입력을 받으면 호출됩니다.
 void paintContent(Graphics g)
          내부를 칠합니다.
 void setChangeListener(ChangeListener listener, Object obj)
           
 void setMargin(int top, int bottom)
          프로그래스바의 상하 여백을 설정합니다(픽셀단위)
 void setMaxValue(int maxValue)
          Progress의 최대 값을 설정합니다.
 void setStep(int step)
          프로그래스바의 증감 단위를 설정합니다 Interactive인 경우 사용자의 입력에의한 증가량이으로 사용되며 , setValue등에 의한 입력시에도 주어진 단위별로 증감이 됩니다. step값이 변경되는경우 현재값도 step단위로 변경됩니다.
 int setValue(int value)
          Progress의 현재값을 설정합니다. setStep에 의해 step이 설정된 경우 설정한 step 단위로 값이 변경됩니다.
 
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, showNotify, toString, validate
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ProgressComponent

public ProgressComponent(boolean bInteractive,
                         int max)
생성자함수 0을 최소값으로 하는 새로운 프로그래스 콤포넌트를 만든다.
Parameters:
bInteractive - 사용자 입력을 받는 Progress 인지를 설정한다.
max - 프로그래스의 최대값을 설정한다.
Method Detail

setStep

public void setStep(int step)
프로그래스바의 증감 단위를 설정합니다 Interactive인 경우 사용자의 입력에의한 증가량이으로 사용되며 , setValue등에 의한 입력시에도 주어진 단위별로 증감이 됩니다. step값이 변경되는경우 현재값도 step단위로 변경됩니다. 기본값은 1입니다.
Parameters:
nStep - 증가량.
Throws:
IllegalArgumentException - step 값이 0이하거나 최대값보다 큰 경우
See Also:
getStep()

getStep

public int getStep()
프로그래스바의 증감 단위를 구합니다
Returns:
설정된 증가량.
See Also:
#setStep()

setMargin

public void setMargin(int top,
                      int bottom)
프로그래스바의 상하 여백을 설정합니다(픽셀단위)
See Also:
#setStep()

setMaxValue

public void setMaxValue(int maxValue)
Progress의 최대 값을 설정합니다. 만일 현재 값이 주어진 최대값보다 크다면 현재 값은 설정한 최대값으로 됩니다.
Parameters:
maxValue - 설정할 최대값
Throws:
IllegalArgumentException - maxValue 값이 0이하인 경우

setValue

public int setValue(int value)
Progress의 현재값을 설정합니다. setStep에 의해 step이 설정된 경우 설정한 step 단위로 값이 변경됩니다. 결과값 = value - value % step의 방식으로 적용됩니다. value 가 0보다 작은경우 0으로 설정되며 MAX 보다 큰경우 MAX로 설정됩니다.
Parameters:
value - 설정할 값
Returns:
설정된 값

getValue

public int getValue()
프로그래스의 설정되어 있는 현재 값을 구하는 함수.
Returns:
설정되어 있는 현재값

getMaxValue

public int getMaxValue()
설정되어 있는 최대값을 구하는 함수.
Returns:
설정되어 있는 최대값

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:
컴포넌트의 높이.

getPreferredHeight

public int getPreferredHeight()
Description copied from class: Component
컴포넌트의 적절한 높이를 결정합니다. ContainerComponent에서 컴포넌트의 크기를 결정할 때에 이 함수가 돌려주는 값을 참조하여 결정합니다.
Overrides:
getPreferredHeight in class Component
Following copied from class: org.kwis.msp.lwc.Component
Returns:
컴포넌트의 높이

getPreferredWidth

public int getPreferredWidth()
Description copied from class: Component
컴포넌트의 적절한 폭을 결정합니다. Container에서 컴포넌트의 크기를 결정할 때에 이 함수가 돌려주는 값을 참조하여 결정합니다.
Overrides:
getPreferredWidth in class Component
Following copied from class: org.kwis.msp.lwc.Component
Returns:
컴포넌트의 폭.

paintContent

public void paintContent(Graphics g)
Description copied from class: Component
내부를 칠합니다. 먼저 validate함수를 호출하여, 컴포넌트의 위치를 유효화(컴포넌트의 위치와 크기 재 계산)한 후 내부의 색상으로 화면을 칠하게 됩니다. 색상이 -1이면, 칠하진 않습니다.
Overrides:
paintContent in class Component
Following copied from class: org.kwis.msp.lwc.Component
Parameters:
g - 칠할 Graphics.
See Also:
Graphics

keyNotify

public boolean keyNotify(int type,
                         int key)
Description copied from class: Component
키 입력을 받으면 호출됩니다. 사용자가 키를 입력하면, setFocus함수에 의해서 입력 포커스를 가지는 컴포넌트의 이 함수가 호출됩니다. typeKEY_PRESSED, KEY_RELEASED, KEY_REPEATED, KEY_TYPED이며, chr는 키 입력값이 됩니다.
Overrides:
keyNotify in class Component
Following copied from class: org.kwis.msp.lwc.Component
Parameters:
type - 키 입력의 타입; 키를 누르는 경우 KEY_PRESSED, 키를 떼면 KEY_RELEASED, 키를 연속적으로 누르면 KEY_REPEATED, 한번 눌려서 떼인 경우라면 KEY_TYPED이 됨
chr - 눌린 키의 문자; '0'-'9'와 '*', '#'은 기본이며 이외의 문자도 넘어 올 수 있습니다.
Returns:
만일 컴포넌트가 인수로 넘오는 키를 이 컴포넌트가 처리했다면, true를 넘겨 줍니다. 그렇지 않았다면 false를 돌려줍니다.

setChangeListener

public void setChangeListener(ChangeListener listener,
                              Object obj)


AromaSoft Corp. Proprietary and Confidential

(C)opyright 2003 AromaSoft Corp. All right reserved.
Contact : contact@aromasoft.com