JavaTM Platform
Standard Ed. 6

javax.swing
클래스 JViewport

java.lang.Object 
  상위를 확장 java.awt.Component 
      상위를 확장 java.awt.Container 
          상위를 확장 javax.swing.JComponent 
              상위를 확장 javax.swing.JViewport
모든 구현된 인터페이스:
ImageObserver , MenuContainer , Serializable , Accessible


public class JViewport
extends JComponent
implements Accessible

기본이 되는 정보를 보기 위해서(때문에) 사용하는 「뷰포트 (창)」입니다. 스크롤 할 경우에 이동하는 것이 뷰포트입니다. 이것은, 카메라의 파인더를 들여다 보는 것에 닮았습니다. 파인더를 위로 향해 움직이면(자), 새로운 것이 시야의 맨 위에 들어가, 맨 밑에 있던 것이 시야로부터 사라집니다.  

디폴트에서는,JViewport 는 불투명합니다. 이것을 변경하는 경우는,setOpaque 메소드를 사용합니다.  

주: draw 할 때에 버퍼를 필요로 하지 않는 고속 스크롤 알고리즘을 구현했습니다. 알고리즘의 기능은 다음과 같습니다.

  1. 뷰와 부모의 뷰를 봐,JComponents 화도인지를 조사한다. 그렇지 않은 경우는 중지해, 뷰포트 전체를 페인트 다시 한다
  2. 뷰포트가 다른 상위 클래스에 의해 숨겨지고 있는 경우는, 중지해 뷰포트 전체를 페인트 다시 한다
  3. 표시 가능하게 되는 영역을 계산한다. 뷰포트와 사이즈가 같은 경우는, 중지해 영역 전체를 페인트 다시 한다
  4. 상위 클래스의 Window 그래픽스를 취득해, 스크롤 한 영역의 copyArea 를 페인트 다시 한다
  5. 뷰에 새롭게 표시된 영역을 페인트 다시 하도록(듯이) 메세지를 보낸다
  6. 다음에 뷰포트에 페인트가 불려 갔을 때에, 클리핑 영역이 뷰포트사이즈보다 작은 경우에는, 타이머가 개시되고 전체를 페인트 다시 한다
일반적으로, 이 방법 쪽이 현격히 빠르게 할 수 있습니다. 배킹 스토어법과 비교하면(자), 이 방법은 오프 스크린 버퍼를 유지하는 오버헤드와 copyArea 를 2 회 실행하는 것을 피할 수가 있습니다. 배킹 스토어 이외의 경우와 비교하면(자), 페인트 영역을 큰폭으로 삭감할 수 있습니다.  

이 방법은, 뷰포트가 다른 윈도우로 숨겨지거나 부분적으로 오프 스크린이 되면(자), 배킹 스토어법보다 속도가 늦어집니다. 다른 윈도우로 뷰포트가 숨겨지면(자), copyArea 는 가베지를 카피해 시스템이 페인트 이벤트를 생성해, 새롭게 출현한 영역을 페인트 할 필요가 있는 것을 알립니다. 이것을 처리하는 유일한 방법은, 뷰포트 전체를 페인트 다시 하는 것 입니다. 다만, 배킹 스토어의 경우와 비교해 퍼포먼스가 저하하는 일이 있습니다. 매우 보기 드문 것은 않습니다만, 뷰포트가 다른 윈도우로 숨겨지고 있을 때 사용자가 스크롤 하는 일이 있기 (위해)때문에, 대부분의 어플리케이션으로 이 최적화 기능은, 뷰포트가 숨겨졌을 경우에 유효가 됩니다.  

경고: Swing 는 thread에 대해서 안전하지는 않습니다. 자세한 것은,「Swing's Threading Policy」를 참조해 주세요.  

경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 1.4 이후, 모든 JavaBeans 의 장기간의 운용 지원는,java.beans 패키지에 추가되고 있습니다. 자세한 것은,XMLEncoder 를 참조해 주세요.

관련 항목:
JScrollPane

상자의 클래스의 개요
protected  class JViewport.AccessibleJViewport
          이 클래스는 JViewport 클래스용의 접근성? 지원를 구현하고 있습니다.
protected  class JViewport.ViewListener
          뷰의 청취자입니다.
 
클래스 javax.swing. JComponent 로부터 상속된 상자의 클래스/인터페이스
JComponent.AccessibleJComponent
 
클래스 java.awt. Container 로부터 상속된 상자의 클래스/인터페이스
Container.AccessibleAWTContainer
 
클래스 java.awt. Component 로부터 상속된 상자의 클래스/인터페이스
Component.AccessibleAWTComponent , Component.BaselineResizeBehavior , Component.BltBufferStrategy , Component.FlipBufferStrategy
 
필드의 개요
protected  boolean backingStore
          추천 되고 있지 않습니다.  Java 2 플랫폼 v1. 3 이후
static int BACKINGSTORE_SCROLL_MODE
          뷰포트의 컨텐츠를 오프 스크린 이미지에 draw 합니다.
protected  Image backingStoreImage
          배킹 스토어에 사용되는 뷰이메이지입니다.
static int BLIT_SCROLL_MODE
          graphics.copyArea() 를 사용해 스크롤을 구현합니다.
protected  boolean isViewSizeSet
          뷰포트의 치수가 결정되어 있는 경우에 true 를 돌려줍니다.
protected  Point lastPaintPosition
          마지막에 페인트 된 viewPosition 입니다.
protected  boolean scrollUnderway
          scrollUnderway 플래그는,JList 등의 컴퍼넌트로 사용됩니다.
static int SIMPLE_SCROLL_MODE
          이 모드는 스크롤 구획을 스크롤 할 때마다 전컨텐츠를 재draw 한다고 하는 매우 간단한 메소드를 사용합니다.
 
클래스 javax.swing. JComponent 로부터 상속된 필드
accessibleContext , listenerList , TOOL_TIP_TEXT_KEY , ui , UNDEFINED_CONDITION , WHEN_ANCESTOR_OF_FOCUSED_COMPONENT , WHEN_FOCUSED , WHEN_IN_FOCUSED_WINDOW
 
클래스 java.awt. Component 로부터 상속된 필드
BOTTOM_ALIGNMENT , CENTER_ALIGNMENT , LEFT_ALIGNMENT , RIGHT_ALIGNMENT , TOP_ALIGNMENT
 
인터페이스 java.awt.image. ImageObserver 로부터 상속된 필드
ABORT , ALLBITS , ERROR , FRAMEBITS , HEIGHT , PROPERTIES , SOMEBITS , WIDTH
 
생성자 의 개요
JViewport ()
          JViewport 를 생성합니다.
 
메소드의 개요
 void addChangeListener (ChangeListener  l)
          뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경될 때마다 통지되는 리스트에 ChangeListener 를 추가합니다.
protected  void addImpl (Component  child, Object  constraints, int index)
          JViewport 의 1 개의 경량인 아이를 설정합니다.
protected  boolean computeBlit (int dx, int dy, Point  blitFrom, Point  blitTo, Dimension  blitSize, Rectangle  blitPaint)
          Blit 의 파라미터를 계산합니다.
protected  LayoutManager createLayoutManager ()
          사브크라사가 이 메소드를 오버라이드(override) 하면(자), 생성자 으로 다른 레이아웃 매니저 (또는 null)를 인스톨 할 수 있습니다.
protected  JViewport.ViewListener createViewListener ()
          뷰의 청취자를 생성합니다.
protected  void firePropertyChange (String  propertyName, Object  oldValue, Object  newValue)
          청취자로 프로퍼티의 변경을 통지합니다.
protected  void fireStateChanged ()
          뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경되면(자), 모든 ChangeListeners 에 통지합니다.
 AccessibleContext getAccessibleContext ()
          이 JViewport 에 관련한 AccessibleContext 를 돌려줍니다.
 ChangeListener [] getChangeListeners ()
          addChangeListener()에 의해 이 JViewport 에 추가된 모든 ChangeListener 의 배열을 돌려줍니다.
 Dimension getExtentSize ()
          뷰의 가시 부분의 사이즈를 뷰의 좌표로 돌려줍니다.
 Insets getInsets ()
          JViewport 에서는 경계가 지원되어 있지 않기 때문에, 인 세트 (경계)의 치수를 (0,0,0,0)로서 돌려줍니다.
 Insets getInsets (Insets  insets)
          이 JViewport 의 인 세트치를 포함하는 Insets 객체를 돌려줍니다.
 int getScrollMode ()
          현재의 스크롤 모드를 돌려줍니다.
 ViewportUI getUI ()
          이 컴퍼넌트를 draw 하는 L&F 객체를 돌려줍니다.
 String getUIClassID ()
          이 컴퍼넌트를 draw 하는 L&F 클래스의 이름을 캐릭터 라인으로 돌려줍니다.
 Component getView ()
          JViewport 의 1 살의 아이 또는 null 를 돌려줍니다.
 Point getViewPosition ()
          뷰포트의 좌상구석에 표시되는 뷰의 좌표를 돌려줍니다.
 Rectangle getViewRect ()
          기점이 getViewPosition, 사이즈가 getExtentSize 인 구형을 돌려줍니다.
 Dimension getViewSize ()
          뷰의 사이즈가 명시적으로 설정되어 있지 않은 경우는, 적절한 사이즈를 돌려줍니다.
 boolean isBackingStoreEnabled ()
          추천 되고 있지 않습니다.  Java 2 플랫폼 1.3 이후,getScrollMode() 로 옮겨졌습니다.
 boolean isOptimizedDrawingEnabled ()
          JViewport 는 (JComponent 로) 이 메소드의 디폴트 구현을 오버라이드(override) 해, false 를 돌려줍니다.
 void paint (Graphics  g)
          backingStore 가 사용 가능한가 어떤가에 응해, 배킹 스토어를 개입시켜 이미지를 페인트 하는지, 또는 현재 표시되고 있는 부분만큼을 페인트 해, 배킹 스토어를 사용해 나머지의 부분을 「Blit」합니다.
protected  String paramString ()
          이 JViewport 의 캐릭터 라인 표현을 돌려줍니다.
 void remove (Component  child)
          Viewport 의 1 개의 경량인 아이를 삭제합니다.
 void removeChangeListener (ChangeListener  l)
          뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경될 때마다 통지되는 리스트로부터 ChangeListener 를 삭제합니다.
 void repaint (long tm, int x, int y, int w, int h)
          RepaintManager 에 의해 paint 가 1 회만 실행되도록(듯이), 항상 부모의 좌표계로 재그립니다.
 void reshape (int x, int y, int w, int h)
          이 뷰포트의 경계를 설정합니다.
 void scrollRectToVisible (Rectangle  contentRect)
          뷰내의 Rectangle 가 가시가 되도록(듯이) 뷰를 스크롤 합니다.
 void setBackingStoreEnabled (boolean enabled)
          추천 되고 있지 않습니다.  Java 2 플랫폼 1.3 이후,setScrollMode() 로 옮겨졌습니다.
 void setBorder (Border  border)
          뷰포트는, 일반적으로의 부모 또는 아이의 클리핑으로 그 아이 ( 「뷰」라고 불린다)를 「스크롤」합니다.
 void setExtentSize (Dimension  newExtent)
          뷰의 좌표를 사용해 뷰의 가시 부분의 사이즈를 설정합니다.
 void setScrollMode (int mode)
          뷰포트콘텐트의 스크롤 메소드를 제어하기 위해서 사용합니다.
 void setUI (ViewportUI  ui)
          이 컴퍼넌트를 draw 하는 L&F 객체를 설정합니다.
 void setView (Component  view)
          JViewport 의 1 개의 경량인 아이 (view)를 설정합니다.
 void setViewPosition (Point  p)
          뷰포트의 좌상구석에 표시되는 뷰의 좌표를 설정합니다.
 void setViewSize (Dimension  newSize)
          뷰의 사이즈를 설정합니다.
 Dimension toViewCoordinates (Dimension  size)
          픽셀 좌표의 사이즈를 뷰의 좌표로 변환합니다.
 Point toViewCoordinates (Point  p)
          픽셀 좌표의 포인트를 뷰의 좌표로 변환합니다.
 void updateUI ()
          현재의 Look & Feel 로부터의 값에 UI 프로퍼티을 리셋 합니다.
 
클래스 javax.swing. JComponent 로부터 상속된 메소드
addAncestorListener , addNotify , addVetoableChangeListener , computeVisibleRect , contains , createToolTip , disable , enable , firePropertyChange , firePropertyChange , firePropertyChange , fireVetoableChange , getActionForKeyStroke , getActionMap , getAlignmentX , getAlignmentY , getAncestorListeners , getAutoscrolls , getBaseline , getBaselineResizeBehavior , getBorder , getBounds , getClientProperty , getComponentGraphics , getComponentPopupMenu , getConditionForKeyStroke , getDebugGraphicsOptions , getDefaultLocale , getFontMetrics , getGraphics , getHeight , getInheritsPopupMenu , getInputMap , getInputMap , getInputVerifier , getListeners , getLocation , getMaximumSize , getMinimumSize , getNextFocusableComponent , getPopupLocation , getPreferredSize , getRegisteredKeyStrokes , getRootPane , getSize , getToolTipLocation , getToolTipText , getToolTipText , getTopLevelAncestor , getTransferHandler , getVerifyInputWhenFocusTarget , getVetoableChangeListeners , getVisibleRect , getWidth , getX , getY , grabFocus , isDoubleBuffered , isLightweightComponent , isManagingFocus , isOpaque , isPaintingForPrint , isPaintingTile , isRequestFocusEnabled , isValidateRoot , paintBorder , paintChildren , paintComponent , paintImmediately , paintImmediately , print , printAll , printBorder , printChildren , printComponent , processComponentKeyEvent , processKeyBinding , processKeyEvent , processMouseEvent , processMouseMotionEvent , putClientProperty , registerKeyboardAction , registerKeyboardAction , removeAncestorListener , removeNotify , removeVetoableChangeListener , repaint , requestDefaultFocus , requestFocus , requestFocus , requestFocusInWindow , requestFocusInWindow , resetKeyboardActions , revalidate , setActionMap , setAlignmentX , setAlignmentY , setAutoscrolls , setBackground , setComponentPopupMenu , setDebugGraphicsOptions , setDefaultLocale , setDoubleBuffered , setEnabled , setFocusTraversalKeys , setFont , setForeground , setInheritsPopupMenu , setInputMap , setInputVerifier , setMaximumSize , setMinimumSize , setNextFocusableComponent , setOpaque , setPreferredSize , setRequestFocusEnabled , setToolTipText , setTransferHandler , setUI , setVerifyInputWhenFocusTarget , setVisible , unregisterKeyboardAction , update
 
클래스 java.awt. Container 로부터 상속된 메소드
add , add , add , add , add , addContainerListener , addPropertyChangeListener , addPropertyChangeListener , applyComponentOrientation , areFocusTraversalKeysSet , countComponents , deliverEvent , doLayout , findComponentAt , findComponentAt , getComponent , getComponentAt , getComponentAt , getComponentCount , getComponents , getComponentZOrder , getContainerListeners , getFocusTraversalKeys , getFocusTraversalPolicy , getLayout , getMousePosition , insets , invalidate , isAncestorOf , isFocusCycleRoot , isFocusCycleRoot , isFocusTraversalPolicyProvider , isFocusTraversalPolicySet , layout , list , list , locate , minimumSize , paintComponents , preferredSize , printComponents , processContainerEvent , processEvent , remove , removeAll , removeContainerListener , setComponentZOrder , setFocusCycleRoot , setFocusTraversalPolicy , setFocusTraversalPolicyProvider , setLayout , transferFocusBackward , transferFocusDownCycle , validate , validateTree
 
클래스 java.awt. Component 로부터 상속된 메소드
action , add , addComponentListener , addFocusListener , addHierarchyBoundsListener , addHierarchyListener , addInputMethodListener , addKeyListener , addMouseListener , addMouseMotionListener , addMouseWheelListener , bounds , checkImage , checkImage , coalesceEvents , contains , createImage , createImage , createVolatileImage , createVolatileImage , disableEvents , dispatchEvent , enable , enableEvents , enableInputMethods , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , firePropertyChange , getBackground , getBounds , getColorModel , getComponentListeners , getComponentOrientation , getCursor , getDropTarget , getFocusCycleRootAncestor , getFocusListeners , getFocusTraversalKeysEnabled , getFont , getForeground , getGraphicsConfiguration , getHierarchyBoundsListeners , getHierarchyListeners , getIgnoreRepaint , getInputContext , getInputMethodListeners , getInputMethodRequests , getKeyListeners , getLocale , getLocation , getLocationOnScreen , getMouseListeners , getMouseMotionListeners , getMousePosition , getMouseWheelListeners , getName , getParent , getPeer , getPropertyChangeListeners , getPropertyChangeListeners , getSize , getToolkit , getTreeLock , gotFocus , handleEvent , hasFocus , hide , imageUpdate , inside , isBackgroundSet , isCursorSet , isDisplayable , isEnabled , isFocusable , isFocusOwner , isFocusTraversable , isFontSet , isForegroundSet , isLightweight , isMaximumSizeSet , isMinimumSizeSet , isPreferredSizeSet , isShowing , isValid , isVisible , keyDown , keyUp , list , list , list , location , lostFocus , mouseDown , mouseDrag , mouseEnter , mouseExit , mouseMove , mouseUp , move , nextFocus , paintAll , postEvent , prepareImage , prepareImage , processComponentEvent , processFocusEvent , processHierarchyBoundsEvent , processHierarchyEvent , processInputMethodEvent , processMouseWheelEvent , remove , removeComponentListener , removeFocusListener , removeHierarchyBoundsListener , removeHierarchyListener , removeInputMethodListener , removeKeyListener , removeMouseListener , removeMouseMotionListener , removeMouseWheelListener , removePropertyChangeListener , removePropertyChangeListener , repaint , repaint , repaint , resize , resize , setBounds , setBounds , setComponentOrientation , setCursor , setDropTarget , setFocusable , setFocusTraversalKeysEnabled , setIgnoreRepaint , setLocale , setLocation , setLocation , setName , setSize , setSize , show , show , size , toString , transferFocus , transferFocusUpCycle
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

필드의 상세

isViewSizeSet

protected boolean isViewSizeSet
뷰포트의 치수가 결정되어 있는 경우에 true 를 돌려줍니다. 디폴트는 false 입니다.


lastPaintPosition

protected Point  lastPaintPosition
마지막에 페인트 된 viewPosition 입니다. 배킹 스토어 이미지가 어느 정도 유효한가를 알 수 있습니다.


backingStore

@Deprecated 
protected boolean backingStore
추천 되고 있지 않습니다.  Java 2 플랫폼 v1. 3 이후
이 뷰포트가 그 내용의 오프 스크린 이미지를 유지하고 있는 경우에 true 를 돌려줍니다. 유지되고 있는 경우, 표시를 구축하기 위해서 뷰객체에 액세스 하는 것이 아니라, 고속의 「비트 Blit」처리를 사용해 스크롤을 실행할 수 있습니다. 디폴트는 false 입니다.

관련 항목:
setScrollMode(int)

backingStoreImage

protected transient Image  backingStoreImage
배킹 스토어에 사용되는 뷰이메이지입니다.


scrollUnderway

protected boolean scrollUnderway
scrollUnderway 플래그는,JList 등의 컴퍼넌트로 사용됩니다. JList 로 하 커서 키가 밀려 선택되고 있는 셀이 리스트의 마지막 셀인 경우,scrollpane 는 오토 스크롤 합니다. 여기서, 선택되고 있던 셀은 페인트 다시 할 필요가 있기 (위해)때문에,setViewPosition(Point) 의 명시적인 호출이 있는 경우에만, 뷰포트가 최적화된 페인트를 하기 위해서 플래그가 필요하게 됩니다. setBounds 가 다른 루트를 개입시켜 불려 가는 경우, 플래그는 오프가 되어, 뷰는 보통으로 페인트 다시 합니다. 이것과는 별도로,JViewport 클래스로부터 이것을 삭제해,setBackingStoreEnabled 를 사용해 JList 에 이 경우의 제어를 시키는 방법도 있습니다. 디폴트는 false 입니다.


BLIT_SCROLL_MODE

public static final int BLIT_SCROLL_MODE
graphics.copyArea() 를 사용해 스크롤을 구현합니다. 이 방법이 대부분의 어플리케이션에 있어 가장 빠른 방법입니다.

도입된 버젼:
1.3
관련 항목:
setScrollMode(int) , 정수 필드치

BACKINGSTORE_SCROLL_MODE

public static final int BACKINGSTORE_SCROLL_MODE
뷰포트의 컨텐츠를 오프 스크린 이미지에 draw 합니다. 이 방법은 이전에는,JTable 의 디폴트였습니다. 이 방법은, 경우에 따라서는 「Blit 모드」에는 유용할지도 모릅니다만, 상당한 양의 여분의 RAM 가 필요합니다.

도입된 버젼:
1.3
관련 항목:
setScrollMode(int) , 정수 필드치

SIMPLE_SCROLL_MODE

public static final int SIMPLE_SCROLL_MODE
이 모드는 스크롤 구획을 스크롤 할 때마다 전컨텐츠를 재draw 한다고 하는 매우 간단한 메소드를 사용합니다. 이것은 Swing 1.0 및 Swing 1.1 의 디폴트 동작이었습니다. 대부분의 경우, 다른 2 개의 옵션 (모드)은 어느쪽이나 좋은 퍼포먼스를 제공합니다.

도입된 버젼:
1.3
관련 항목:
setScrollMode(int) , 정수 필드치
생성자 의 상세

JViewport

public JViewport()
JViewport 를 생성합니다.

메소드의 상세

getUI

public ViewportUI  getUI()
이 컴퍼넌트를 draw 하는 L&F 객체를 돌려줍니다.

반환값:
ViewportUI 객체
도입된 버젼:
1.3

setUI

public void setUI(ViewportUI  ui)
이 컴퍼넌트를 draw 하는 L&F 객체를 설정합니다.

파라미터:
ui - ViewportUI L&F 객체
도입된 버젼:
1.3
관련 항목:
UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
현재의 Look & Feel 로부터의 값에 UI 프로퍼티을 리셋 합니다.

오버라이드(override):
클래스 JComponent 내의 updateUI
관련 항목:
JComponent.updateUI()

getUIClassID

public String  getUIClassID()
이 컴퍼넌트를 draw 하는 L&F 클래스의 이름을 캐릭터 라인으로 돌려줍니다.

오버라이드(override):
클래스 JComponent 내의 getUIClassID
반환값:
캐릭터 라인 「ViewportUI」
관련 항목:
JComponent.getUIClassID() , UIDefaults.getUI(javax.swing.JComponent)

addImpl

protected void addImpl(Component  child,
                       Object  constraints,
                       int index)
JViewport 의 1 개의 경량인 아이를 설정합니다. null 도 지정할 수 있습니다. 뷰포트 전체를 차지하는 아이는 1 살 뿐이므로, 인수 constraintsindex 는 무시됩니다.

오버라이드(override):
클래스 Container 내의 addImpl
파라미터:
child - 뷰포트의 경량인 child
constraints - 준수되어야 할 constraints
index - 인덱스
관련 항목:
setView(java.awt.Component)

remove

public void remove(Component  child)
Viewport 의 1 개의 경량인 아이를 삭제합니다.

오버라이드(override):
클래스 Container 내의 remove
파라미터:
child - 삭제되는 컴퍼넌트
관련 항목:
setView(java.awt.Component)

scrollRectToVisible

public void scrollRectToVisible(Rectangle  contentRect)
뷰내의 Rectangle 가 가시가 되도록(듯이) 뷰를 스크롤 합니다.  

이 메소드는, 스크롤의 전에 뷰를 검증합니다. 뷰가 현재 무효인 경우,isValid 가 false 를 돌려줍니다. 포함 관계의 계층을 작성할 때 과잉인 검증을 피하기 (위해)때문에, 이 메소드는, 피어를 가지지 않는 상위 클래스의 유무, 유효한 루트 클래스의 유무, 및 Window 또는 Applet 의 어느 쪽인지 나오지 않는 상위 클래스의 유무에 대해서는 검증하지 않습니다.  

이 메소드는, 유효한 뷰포트의 범위외의 스크롤은 실시하지 않습니다. contentRect 가 뷰포트보다 큰 경우, 스크롤은 뷰포트 경계의 범위내로 한정됩니다.

오버라이드(override):
클래스 JComponent 내의 scrollRectToVisible
파라미터:
contentRect - 표시하는 Rectangle
관련 항목:
JComponent.isValidateRoot() , Component.isValid() , Component.getPeer()

setBorder

public final void setBorder(Border  border)
뷰포트는, 일반적으로의 부모 또는 아이의 클리핑으로 그 아이 ( 「뷰」라고 불린다)를 「스크롤」합니다. 일반적으로, 뷰는 스크롤과는 반대의 방향으로 이동합니다. null 이외의 경계 (또는 0 이외의 인 세트)는, 지원되고 있지 않습니다. 그것은, 서브 클래스화를 어렵게 하는 만큼 이 컴퍼넌트의 지오메트리궕 복잡하게 되는 것을 막기 위해입니다. 경계 첨부의 JViewport 를 생성하려면 , 경계를 가지는 JPanel 에 그것을 추가합니다.  

주:bordernull 이외의 경우, 이 메소드는 경계가 JViewPort 에서는 지원되어 있지 않기 때문에 예외를 throw 합니다.

오버라이드(override):
클래스 JComponent 내의 setBorder
파라미터:
border - 설정하는 Border
예외:
IllegalArgumentException - 이 메소드는 구현되어 있지 않은
관련 항목:
Border , CompoundBorder

getInsets

public final Insets  getInsets()
JViewport 에서는 경계가 지원되어 있지 않기 때문에, 인 세트 (경계)의 치수를 (0,0,0,0)로서 돌려줍니다.

오버라이드(override):
클래스 JComponent 내의 getInsets
반환값:
크기 제로, 원점 제로의 Rectange
관련 항목:
setBorder(javax.swing.border.Border)

getInsets

public final Insets  getInsets(Insets  insets)
JViewport 의 인 세트치를 포함하는 Insets 객체를 돌려줍니다. 건네받은 Insets 객체는 다시 초기화되어 이 객체내의 모든 기존의 값은 덧쓰기됩니다.

오버라이드(override):
클래스 JComponent 내의 getInsets
파라미터:
insets - 재사용할 수 있는 Insets 객체
반환값:
이 뷰포트의 인 세트치
관련 항목:
getInsets()

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
JViewport 는 (JComponent 로) 이 메소드의 디폴트 구현을 오버라이드(override) 해, false 를 돌려줍니다. 그 결과, draw 장치는 JViewport 의 아이에게 직접 메세지를 보내는 것이 아니라,Viewportpaint 의 구현을 호출합니다.

오버라이드(override):
클래스 JComponent 내의 isOptimizedDrawingEnabled
반환값:
false

paint

public void paint(Graphics  g)
backingStore 가 사용 가능한가 어떤가에 응해, 배킹 스토어를 개입시켜 이미지를 페인트 하는지, 또는 현재 표시되고 있는 부분만큼을 페인트 해, 배킹 스토어를 사용해 나머지의 부분을 「Blit」합니다.
「Blit」는, PDP-10 BLT (BLock Transfer) 명령여, 비트의 블록을 카피합니다.

오버라이드(override):
클래스 JComponent 내의 paint
파라미터:
g - 페인트 하는 Graphics 문맥
관련 항목:
JComponent.paintComponent(java.awt.Graphics) , JComponent.paintBorder(java.awt.Graphics) , JComponent.paintChildren(java.awt.Graphics) , JComponent.getComponentGraphics(java.awt.Graphics) , JComponent.repaint(long, int, int, int, int)

reshape

public void reshape(int x,
                    int y,
                    int w,
                    int h)
이 뷰포트의 경계를 설정합니다. 뷰포트의 폭 또는 높이가 변경되었을 경우는,StateChanged 이벤트를 트리거합니다.

오버라이드(override):
클래스 JComponent 내의 reshape
파라미터:
x - 기점의 좌단
y - 기점의 상단
w - 픽셀 단위의 폭
h - 픽셀 단위의 높이
관련 항목:
JComponent.reshape(int, int, int, int)

setScrollMode

public void setScrollMode(int mode)
뷰포트콘텐트의 스크롤 메소드를 제어하기 위해서 사용합니다. 이 모드를 변경해 최고의 퍼포먼스를 얻는 것을 추천합니다.

파라미터:
mode - 다음의 값의 언젠가.
  • JViewport.BLIT_SCROLL_MODE
  • JViewport.BACKINGSTORE_SCROLL_MODE
  • JViewport.SIMPLE_SCROLL_MODE
도입된 버젼:
1.3
관련 항목:
BLIT_SCROLL_MODE , BACKINGSTORE_SCROLL_MODE , SIMPLE_SCROLL_MODE

getScrollMode

public int getScrollMode()
현재의 스크롤 모드를 돌려줍니다.

반환값:
scrollMode 프로퍼티
도입된 버젼:
1.3
관련 항목:
setScrollMode(int)

isBackingStoreEnabled

@Deprecated 
public boolean isBackingStoreEnabled()
추천 되고 있지 않습니다.  Java 2 플랫폼 1.3 이후,getScrollMode() 로 옮겨졌습니다.

이 뷰포트가 그 내용의 오프 스크린 이미지를 유지하고 있는 경우에 true 를 돌려줍니다.

반환값:
scrollModeBACKINGSTORE_SCROLL_MODE 의 경우는 true

setBackingStoreEnabled

@Deprecated 
public void setBackingStoreEnabled(boolean enabled)
추천 되고 있지 않습니다.  Java 2 플랫폼 1.3 이후,setScrollMode() 로 옮겨졌습니다.

true 의 경우, 이 뷰포트는 그 내용의 오프 스크린 이미지를 유지합니다. 이 이미지는,viewPosition 에 대할 뿐 향의 몇 안 되는 변경에 대한 코스트를 삭감하기 위해서 사용됩니다. 뷰포트 전체를 페인트 다시 하는 것이 아니라,Graphics.copyArea 를 사용해 스크롤을 실행합니다.

파라미터:
enabled - true 의 경우, 오프 스크린 배킹 스토어를 유지한다

getView

public Component  getView()
JViewport 의 1 살의 아이 또는 null 를 돌려줍니다.

반환값:
뷰포트의 아이. 존재하지 않는 경우는 null
관련 항목:
setView(java.awt.Component)

setView

public void setView(Component  view)
JViewport 의 1 개의 경량인 아이 (view)를 설정합니다. null 도 지정할 수 있습니다.

파라미터:
view - 뷰포트의 새로운 경량인 아이
관련 항목:
getView()

getViewSize

public Dimension  getViewSize()
뷰의 사이즈가 명시적으로 설정되어 있지 않은 경우는, 적절한 사이즈를 돌려줍니다. 설정되어 있는 경우는, 뷰의 현재의 사이즈를 돌려줍니다. 뷰가 없는 경우는, 0,0 을 돌려줍니다.

반환값:
뷰의 사이즈를 지정하는 Dimension 객체

setViewSize

public void setViewSize(Dimension  newSize)
뷰의 사이즈를 설정합니다. 상태 변경 이벤트가 트리거됩니다.

파라미터:
newSize - 뷰의 새로운 사이즈를 지정하는 Dimension 객체

getViewPosition

public Point  getViewPosition()
뷰포트의 좌상구석에 표시되는 뷰의 좌표를 돌려줍니다. 뷰가 없는 경우는 0,0 을 돌려줍니다.

반환값:
좌상의 좌표를 나타내는 Point 객체

setViewPosition

public void setViewPosition(Point  p)
뷰포트의 좌상구석에 표시되는 뷰의 좌표를 설정합니다. 뷰가 없는 경우는 아무것도 실시하지 않습니다.

파라미터:
p - 좌상의 좌표를 나타내는 Point 객체

getViewRect

public Rectangle  getViewRect()
기점이 getViewPosition, 사이즈가 getExtentSize 인 구형을 돌려줍니다. 이것은, 뷰의 좌표로 나타난 뷰의 가시 부분입니다.

반환값:
뷰의 좌표를 사용해 뷰의 가시 부분을 나타내는 Rectangle

computeBlit

protected boolean computeBlit(int dx,
                              int dy,
                              Point  blitFrom,
                              Point  blitTo,
                              Dimension  blitSize,
                              Rectangle  blitPaint)
Blit 의 파라미터를 계산합니다. 배킹 스토어 이미지는 현재 좌상구석에 oldLoc 를 보관 유지하고 있어, 지금부터 newLoc 에 스크롤 합니다. 파라미터는, Blit 로 요구되는 값을 돌려주기 위해서(때문에) 변경됩니다.

파라미터:
dx - 수평 방향의 델타
dy - 수직 방향의 델타
blitFrom - Blit 원의 Point
blitTo - Blit 처의 Point
blitSize - Blit 하는 영역의 Dimension
blitPaint - Blit 처의 영역
반환값:
파라미터가 변경되고 Blit 의 준비를 할 수 있었을 경우는 true, 그렇지 않은 경우는 false

getExtentSize

public Dimension  getExtentSize()
뷰의 가시 부분의 사이즈를 뷰의 좌표로 돌려줍니다.

반환값:
뷰의 사이즈를 지정하는 Dimension 객체

toViewCoordinates

public Dimension  toViewCoordinates(Dimension  size)
픽셀 좌표의 사이즈를 뷰의 좌표로 변환합니다. 「논리 좌표」를 지원하는 뷰포트의 서브 클래스는, 이 메소드를 오버라이드(override) 합니다.

파라미터:
size - 픽셀 좌표를 사용하는 Dimension 객체
반환값:
뷰의 좌표에 변환된 Dimension 객체

toViewCoordinates

public Point  toViewCoordinates(Point  p)
픽셀 좌표의 포인트를 뷰의 좌표로 변환합니다. 「논리 좌표」를 지원하는 뷰포트의 서브 클래스는, 이 메소드를 오버라이드(override) 합니다.

파라미터:
p - 픽셀 좌표를 사용하는 Point 객체
반환값:
뷰의 좌표에 변환된 Point 객체

setExtentSize

public void setExtentSize(Dimension  newExtent)
뷰의 좌표를 사용해 뷰의 가시 부분의 사이즈를 설정합니다.

파라미터:
newExtent - 뷰의 사이즈를 지정하는 Dimension 객체

createViewListener

protected JViewport.ViewListener  createViewListener()
뷰의 청취자를 생성합니다.

반환값:
ViewListener

createLayoutManager

protected LayoutManager  createLayoutManager()
사브크라사가 이 메소드를 오버라이드(override) 하면(자), 생성자 으로 다른 레이아웃 매니저 (또는 null)를 인스톨 할 수 있습니다. JViewport 로 인스톨 하는 LayoutManager 를 돌려줍니다.

반환값:
LayoutManager

addChangeListener

public void addChangeListener(ChangeListener  l)
뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경될 때마다 통지되는 리스트에 ChangeListener 를 추가합니다.

파라미터:
l - 추가하는 ChangeListener
관련 항목:
removeChangeListener(javax.swing.event.ChangeListener) , setViewPosition(java.awt.Point) , setViewSize(java.awt.Dimension) , setExtentSize(java.awt.Dimension)

removeChangeListener

public void removeChangeListener(ChangeListener  l)
뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경될 때마다 통지되는 리스트로부터 ChangeListener 를 삭제합니다.

파라미터:
l - 삭제하는 ChangeListener
관련 항목:
addChangeListener(javax.swing.event.ChangeListener)

getChangeListeners

public ChangeListener [] getChangeListeners()
addChangeListener()에 의해 이 JViewport 에 추가된 모든 ChangeListener 의 배열을 돌려줍니다.

반환값:
추가된 모든 ChangeListener. 청취자가 추가되어 있지 않은 경우는 빈 상태(empty)의 배열
도입된 버젼:
1.4

fireStateChanged

protected void fireStateChanged()
뷰의 사이즈, 위치, 또는 뷰포트의 길이가 변경되면(자), 모든 ChangeListeners 에 통지합니다.

관련 항목:
addChangeListener(javax.swing.event.ChangeListener) , removeChangeListener(javax.swing.event.ChangeListener) , EventListenerList

repaint

public void repaint(long tm,
                    int x,
                    int y,
                    int w,
                    int h)
RepaintManager 에 의해 paint 가 1 회만 실행되도록(듯이), 항상 부모의 좌표계로 재그립니다.

오버라이드(override):
클래스 JComponent 내의 repaint
파라미터:
tm - 갱신까지의 최대 시간 (밀리 세컨드)
x - x 좌표 (왼쪽으로부터의 픽셀수)
y - y 좌표 (위로부터의 픽셀수)
w - 폭
h - 높이
관련 항목:
Component.update(java.awt.Graphics)

paramString

protected String  paramString()
JViewport 의 캐릭터 라인 표현을 돌려줍니다. 이 메소드는 디버그 전용이며, 반환되는 캐릭터 라인의 내용 및 형식은 구현에 따라서 다릅니다. 반환되는 캐릭터 라인은 빈 상태(empty)의 경우가 있습니다만,null 로는 되지 않습니다.

오버라이드(override):
클래스 JComponent 내의 paramString
반환값:
JViewport 의 캐릭터 라인 표현

firePropertyChange

protected void firePropertyChange(String  propertyName,
                                  Object  oldValue,
                                  Object  newValue)
청취자로 프로퍼티의 변경을 통지합니다. 이것을 서브 클래스화해 windowBlit 프로퍼티을 갱신합니다. putClientProperty 프로퍼티은 final 입니다.

오버라이드(override):
클래스 Component 내의 firePropertyChange
파라미터:
propertyName - 프로퍼티명이 포함되고 있는 캐릭터 라인
oldValue - 프로퍼티의 변경전의 값
newValue - 프로퍼티의 변경 후의 값

getAccessibleContext

public AccessibleContext  getAccessibleContext()
이 JViewport 에 관련한 AccessibleContext 를 돌려줍니다. 뷰포트의 경우, AccessibleContext 는 AccessibleJViewport 의 형식을 취합니다. 필요에 따라서 신규의 AccessibleJViewport 인스턴스가 작성됩니다.

정의:
인터페이스 Accessible 내의 getAccessibleContext
오버라이드(override):
클래스 JComponent 내의 getAccessibleContext
반환값:
이 JViewport 의 AccessibleContext 로서 기능하는 AccessibleJViewport

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 도 참조해 주세요.