org.kwis.msp.lwc
Class TickerComponent

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

public class TickerComponent
extends Component

TickerComponent는 문자열과 이미지로 구성되면 우측에서 좌측으로 움직이는 컴포넌트입니다. 좌측으로 이동하여 문자열의 끝이 좌측으로 사라지면 다시 문자열의 처음부터 우측에서 보여지게 되어 동일한 방향으로 이동을 계속합니다.

TickerComponent의 넓이 값은 TickerComponent를 추가한 ContainerComponent의 넓이 값과 같으며, 높이는 이미지가 문자의 한 줄 높이보다 작은 경우 한줄 높이 값을 가지며, 이미지의 높이가 더 큰 경우 이미지 높이 값을 가지게 됩니다.

움직이는 속도는 setDelay(int)메소드를 사용하여 변경할 수 있습니다. 이 때 지정해주는 시간 값은 milleseconds 단위입니다. 기본으로 설정된 값은 DEFAULT_DELAY입니다. 움직임 속도 값은 '-'값은 지정될 수 없으며, '-'값이 지정된 경우 IllegalArgumentException이 발생됩니다.

TickerComponent에서는 움직임을 제어할 수 있는 기능을 제공하고 있습니다. 움직임 상태는 setTickerState(boolean)메소드를 사용하여 제어할 수 있습니다. true값이 지정되면 움직이고, false값이 지정되면 움직임을 멈추게 됩니다. 기본적으로 움직임 상태에 지정된 값은 true입니다.

TickerComponent는 서로 다른 ContainerComponent에 공유되어 사용될 수 없습니다. 공유되어 사용되어질 경우 IllegalArgumentException이 발생됩니다.


Field Summary
 int DEFAULT_DELAY
          TickerComponent의 기본 움직임 속도값. 500 milliseconds
 
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
TickerComponent(String str, Image img)
          TickerComponent의 인스턴스를 생성합니다.
 
Method Summary
 Image getImage()
          TickerComponent의 이미지 데이타를 전달합니다.
 int getPreferredHeight()
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredHeight(int w)
          컴포넌트의 적절한 높이를 결정합니다.
 int getPreferredWidth()
          컴포넌트의 적절한 폭을 결정합니다.
 String getString()
          TickerComponent의 문자 데이타를 얻어옵니다.
 void paintContent(Graphics g)
          내부를 칠합니다.
 void setDelay(int delay)
          TickerComponent의 문자 흐름 속도를 설정합니다.
 void setImage(Image img)
          TickerComponent의 이미지 데이타를 지정합니다.
 void setString(String str)
          화면에 출력될 TickerComponent의 문자 데이타를 지정합니다.
 boolean setTickerState(boolean st)
          TickerComponent의 움직임/정지 상태를 설정합니다.
 
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, keyNotify, 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
 

Field Detail

DEFAULT_DELAY

public int DEFAULT_DELAY
TickerComponent의 기본 움직임 속도값. 500 milliseconds
Constructor Detail

TickerComponent

public TickerComponent(String str,
                       Image img)
TickerComponent의 인스턴스를 생성합니다. 기본적으로 움직임 상태값에는 true값이 지정되어 있고, 데이타가 움직이는 상태입니다. 또한 움직이는 속도값은 DEFAULT_DELAY입니다.

문자 데이타는 null값을 가질 수 없으며, null인경우 NullPointerException이 발생합니다. 이미지 데이타는 null값을 가질 수 있습니다.

Parameters:
str - TickerComponent의 문자 데이타
img - TickerComponent의 이미지 데이타 혹은 null
Throws:
NullPointerException - 문자 데이타가 null인경우
Method Detail

setString

public void setString(String str)
화면에 출력될 TickerComponent의 문자 데이타를 지정합니다. 이미 지정된 데이타가 존재하면 새로 지정한 데이타로 문자열이 변경됩니다. 문자 데이타는 null이 될 수 없으며, null 값을 지정한 경우 NullPointerException이 발생됩니다.
Parameters:
str - TickerComponent의 문자 데이타
Throws:
NullPointerException - 문자데이타 str이 null인경우
See Also:
getString(), setImage(Image img)

getString

public String getString()
TickerComponent의 문자 데이타를 얻어옵니다.
Returns:
string TickerComponent의 문자 데이타
See Also:
setString(String str)

setImage

public void setImage(Image img)
TickerComponent의 이미지 데이타를 지정합니다. 이미 지정된 데이타가 존재하면 새로 지정한 데이타로 변경 됩니다.
Parameters:
img - TickerComponent의 이미지 데이타.
See Also:
getImage(), setString(String str)

getImage

public Image getImage()
TickerComponent의 이미지 데이타를 전달합니다.
Returns:
img TickerComponent의 이미지 데이타.
See Also:
setImage(Image img)

setDelay

public void setDelay(int delay)
TickerComponent의 문자 흐름 속도를 설정합니다. 기본으로 설정된 흐름 속도값은 DEFAULT_DELAY입니다.

흐름 속도값이 큰 값일 수록 문자 흐름 속도가 느려집니다. 이 값을 milliseconds 단위이며, '-'의 값을 지정할 수 없습니다. '-'값을 지정하면 IllegalArgumentException이 발생합니다.

Parameters:
delay - 문자 속도 값.milliseconds 단위
Throws:
IllegalArgumentException - delay값이 '-'값인경우

setTickerState

public boolean setTickerState(boolean st)
TickerComponent의 움직임/정지 상태를 설정합니다.

true값이 지정되면 움직이고, false값이 지정되면 움직임을 멈추게 됩니다. 기본적으로 움직임 상태에 지정된 값은 true입니다.

Parameters:
st - true : 문자,이미지 움직임 false: 움직임 정지.

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


AromaSoft Corp. Proprietary and Confidential

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