JavaTM Platform
Standard Ed. 6

javax.swing.text
클래스 ComponentView

java.lang.Object 
  상위를 확장 javax.swing.text.View 
      상위를 확장 javax.swing.text.ComponentView
모든 구현된 인터페이스:
SwingConstants
직계의 기존의 서브 클래스:
FormView , ObjectView


public class ComponentView
extends View

뷰의 인터페이스를 구현하는 콘포넨트데코레이타입니다. 요소의 전체가, 컴퍼넌트의 표시에 사용됩니다. 표시만의 View 의 구현으로부터 대화형의 경량 컴퍼넌트에의 게이트웨이로서 동작해, 컴퍼넌트를 View 계층에 묻을 수 있도록(듯이) 합니다.

컴퍼넌트는,Component.getAlignmentY 에 의해 반환된 값에 따라, 텍스트 baseline에 상대적으로 배치됩니다. Swing 컴퍼넌트의 경우,JComponent.setAlignmentY 메소드를 사용하면(자), 이 값을 간단하게 설정할 수 있습니다. 예를 들어, 값을 0.75 로 설정하면(자), 컴퍼넌트의 75 퍼센트가 baseline 위에, 25 퍼센트가 baseline아래가 됩니다.

이 클래스 구현에 의해, 모든 컴퍼넌트 액세스가 이벤트 thread상에서 확실히 행해져 복수 thread가 존재하는 경우에서도 (즉, 모델 변경의 비동기 통지로부터 등) 적절히 동작할 필요가 있는 처리가 추가로 실행됩니다.

사용되는 컴퍼넌트는, createComponent 메소드의 반환값으로 결정됩니다. 이 메소드의 디폴트의 구현에서는, (StyleConstants.getComponent 를 호출하는 것으로) 요소의 속성으로서 보관 유지되고 있는 컴퍼넌트가 돌려주어집니다. 이 동작에는, 복수의 컴퍼넌트 (즉 공유 모델)에서는 사용할 수 없다고 하는 제한이 있습니다. 서브 클래스에서는, createComponent 를 구현하는 것으로 이 제약을 취소해, 속성에 포함되어 있는 어떤 종류의 스펙에 근거한 컴퍼넌트를 실제로 작성할 수 있습니다. html 패키지의 ObjectView 클래스는, 공유 모델의 복수 콘포넨트뷰를 지원하는 ComponentView 의 구현의 예입니다.


필드의 개요
 
클래스 javax.swing.text. View 로부터 상속된 필드
BadBreakWeight , ExcellentBreakWeight , ForcedBreakWeight , GoodBreakWeight , X_AXIS , Y_AXIS
 
인터페이스 javax.swing. SwingConstants 로부터 상속된 필드
BOTTOM , CENTER , EAST , HORIZONTAL , LEADING , LEFT , NEXT , NORTH , NORTH_EAST , NORTH_WEST , PREVIOUS , RIGHT , SOUTH , SOUTH_EAST , SOUTH_WEST , TOP , TRAILING , VERTICAL , WEST
 
생성자 의 개요
ComponentView (Element  elem)
          새로운 ComponentView 객체를 작성합니다.
 
메소드의 개요
protected  Component createComponent ()
          이 뷰에 관련한 컴퍼넌트를 작성합니다.
 float getAlignment (int axis)
          축으로 따른 이 뷰의 바람직한 레이아웃을 결정합니다.
 Component getComponent ()
          뷰에 관련한 컴퍼넌트를 가져옵니다.
 float getMaximumSpan (int axis)
          이 뷰의 최대 스팬을 축으로 따라 지정합니다.
 float getMinimumSpan (int axis)
          이 뷰의 최소 스팬을 축으로 따라 지정합니다.
 float getPreferredSpan (int axis)
          이 뷰에 적절한 스팬을 축으로 따라 지정합니다.
 Shape modelToView (int pos, Shape  a, Position.Bias  b)
          모델의 좌표 공간으로부터, 뷰의 좌표 공간에의 매핑을 제공합니다.
 void paint (Graphics  g, Shape  a)
          실제의 draw의 동작은, 컴퍼넌트가 그 친컨테이너 (이 뷰를 수용하는 컨테이너)와의 사이에 있는 관련성으로부터 발생합니다.
 void setParent (View  p)
          아이 뷰의 부모를 설정합니다.
 int viewToModel (float x, float y, Shape  a, Position.Bias [] bias)
          뷰의 좌표 공간으로부터 모델의 논리 좌표 공간에의 매핑을 제공합니다.
 
클래스 javax.swing.text. View 로부터 상속된 메소드
append , breakView , changedUpdate , createFragment , forwardUpdate , forwardUpdateToView , getAttributes , getBreakWeight , getChildAllocation , getContainer , getDocument , getElement , getEndOffset , getGraphics , getNextVisualPositionFrom , getParent , getResizeWeight , getStartOffset , getToolTipText , getView , getViewCount , getViewFactory , getViewIndex , getViewIndex , insert , insertUpdate , isVisible , modelToView , modelToView , preferenceChanged , remove , removeAll , removeUpdate , replace , setSize , updateChildren , updateLayout , viewToModel
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

ComponentView

public ComponentView(Element  elem)
새로운 ComponentView 객체를 작성합니다.

파라미터:
elem - 데코레이트 되는 요소
메소드의 상세

createComponent

protected Component  createComponent()
이 뷰에 관련한 컴퍼넌트를 작성합니다. 이 메소드는, 새로운 컴퍼넌트가 필요라고 판단되었을 때에 불려 갑니다. setParent 가 불려 갔을 때, 혹은 속성의 변경이 통지된 결과, 이 메소드가 불려 갑니다.


getComponent

public final Component  getComponent()
뷰에 관련한 컴퍼넌트를 가져옵니다.


paint

public void paint(Graphics  g,
                  Shape  a)
실제의 draw의 동작은, 컴퍼넌트가 그 친컨테이너 (이 뷰를 수용하는 컨테이너)와의 사이에 있는 관련성으로부터 발생합니다. 구현되고 있어도 아무것도 실시하지 않습니다.

정의:
클래스 View 내의 paint
파라미터:
g - 그래픽스 문맥
a - 형상
관련 항목:
View.paint(java.awt.Graphics, java.awt.Shape)

getPreferredSpan

public float getPreferredSpan(int axis)
이 뷰에 적절한 스팬을 축으로 따라 지정합니다. 이 메소드는, 지정된 축으로 따라, Component.getPreferredSize 에 의해 반환된 값을 돌려주도록(듯이) 구현되고 있습니다.

정의:
클래스 View 내의 getPreferredSpan
파라미터:
axis - View.X_AXIS 또는 View.Y_AXIS
반환값:
뷰의 draw처의 스팬. 0 이상. 일반적으로, 뷰는 반환된 스팬내에 draw 되도록(듯이) 요구되지만, 그 보증은 없다. 부모는 뷰의 사이즈의 변경이나 분할을 실시할 가능성이 있다
예외:
IllegalArgumentException - 축이 무효인 경우
관련 항목:
View.getPreferredSpan(int)

getMinimumSpan

public float getMinimumSpan(int axis)
이 뷰의 최소 스팬을 축으로 따라 지정합니다. 이 메소드는, 지정된 축으로 따라, Component.getMinimumSize 에 의해 반환된 값을 돌려주도록(듯이) 구현되고 있습니다.

오버라이드(override):
클래스 View 내의 getMinimumSpan
파라미터:
axis - View.X_AXIS 또는 View.Y_AXIS
반환값:
뷰의 draw처의 스팬. 0 이상. 일반적으로, 뷰는 반환된 스팬내에 draw 되도록(듯이) 요구되지만, 그 보증은 없다. 부모는 뷰의 사이즈의 변경이나 분할을 실시할 가능성이 있다
예외:
IllegalArgumentException - 축이 무효인 경우
관련 항목:
View.getPreferredSpan(int)

getMaximumSpan

public float getMaximumSpan(int axis)
이 뷰의 최대 스팬을 축으로 따라 지정합니다. 이 메소드는, 지정된 축으로 따라, Component.getMaximumSize 에 의해 반환된 값을 돌려주도록(듯이) 구현되고 있습니다.

오버라이드(override):
클래스 View 내의 getMaximumSpan
파라미터:
axis - View.X_AXIS 또는 View.Y_AXIS
반환값:
뷰의 draw처의 스팬. 0 이상. 일반적으로, 뷰는 반환된 스팬내에 draw 되도록(듯이) 요구되지만, 그 보증은 없다. 부모는 뷰의 사이즈의 변경이나 분할을 실시할 가능성이 있다
예외:
IllegalArgumentException - 축이 무효인 경우
관련 항목:
View.getPreferredSpan(int)

getAlignment

public float getAlignment(int axis)
축으로 따른 이 뷰의 바람직한 레이아웃을 결정합니다. 매입 컴퍼넌트의 배치를 위해서(때문에) 구현되고 있습니다.

오버라이드(override):
클래스 View 내의 getAlignment
파라미터:
axis - View.X_AXIS 또는 View.Y_AXIS
반환값:
바람직한 배치. 이 값의 범위는 0.0 ~ 1.0 으로, 0 은 기점에의 배치, 1.0 은 기점으로부터 최대한 멀어진 배치를 나타낸다. 0.5 는 뷰의 중앙에의 배치가 된다

setParent

public void setParent(View  p)
아이 뷰의 부모를 설정합니다. 아이에게 자신이 부모인 것을 알리기 위해서(때문에), 부모가 호출합니다. 이것에 의해 뷰는 부모의 Container 등에 액세스 할 수 있게 됩니다. 컴퍼넌트가 아직 작성되어 있지 않은 경우에는, 슈퍼 클래스의 동작이 실행된 뒤에 createComponent 이 불려 갑니다. 다음에, 매입 컴퍼넌트의 부모가 getContainer 에 의해 반환된 값으로 설정됩니다. 친뷰파라메이타의 값이 null 의 경우, 이 뷰는 클린 업중이며, 컴퍼넌트는 그 부모로부터 삭제됩니다.

컴퍼넌트의 계층의 변경은, 컴퍼넌트의 락에 영향을 주는 일이 있기 (위해)때문에, View 계층에 대해서 안전하지는 않습니다. 따라서, 이 기능은, 이벤트 thread상의 경우에는 즉시 실행되어 다른 thread로부터 불려 갔을 경우 (비동기의 갱신으로부터의 변경의 통지의 경우)는 이벤트 큐에 넣어집니다.

오버라이드(override):
클래스 View 내의 setParent
파라미터:
p - 부모

modelToView

public Shape  modelToView(int pos,
                         Shape  a,
                         Position.Bias  b)
                  throws BadLocationException 
모델의 좌표 공간으로부터, 뷰의 좌표 공간에의 매핑을 제공합니다.

정의:
클래스 View 내의 modelToView
파라미터:
pos - 변환 대상의 위치 >>= 0
a - draw를 위해서(때문에) 할당할 수 있었던 영역
b - 위치가 2 개의 뷰의 경계인 경우에, 오프셋(offset)에 의해 나타내지기 직전의 문자 또는 다음의 문자에의 바이어스. b 의 값은 다음의 어느 쪽인지 1개가 된다
  • Position.Bias.Forward
  • Position.Bias.Backward
반환값:
지정된 위치의 바운딩 박스
예외:
BadLocationException - 지정된 위치가, 관련지을 수 있었던 문서내의 유효한 위치를 나타내지 않는 경우
관련 항목:
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)

viewToModel

public int viewToModel(float x,
                       float y,
                       Shape  a,
                       Position.Bias [] bias)
뷰의 좌표 공간으로부터 모델의 논리 좌표 공간에의 매핑을 제공합니다.

정의:
클래스 View 내의 viewToModel
파라미터:
x - X 좌표 >= 0
y - Y 좌표 >= 0
a - draw를 위해서(때문에) 할당할 수 있었던 영역
반환값:
지정된 뷰내의 점을 무엇보다 적절히 표현하는 모델내의 위치
관련 항목:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.