JavaTM 2 Platform
Standard Ed. 6

javax.swing
類別 ScrollPaneLayout

java.lang.Object
  繼承者 javax.swing.ScrollPaneLayout
所有已實作的介面:
LayoutManager, Serializable, ScrollPaneConstants
直接已知子類別:
ScrollPaneLayout.UIResource

public class ScrollPaneLayout
extends Object
implements LayoutManager, ScrollPaneConstants, Serializable

JScrollPane 使用的佈局管理器。JScrollPaneLayout 負責管理九個元件:一個視口、兩個滾動條、一個行標題、一個列標題和四個“角”元件。

警告:此類別的已序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲,或適用於在運行相同 Swing 版本的應用程序之間進行 RMI(Remote Method Invocation,遠端方法調用)。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder

另請參見:
JScrollPane, JViewport

巢狀類別摘要
static class ScrollPaneLayout.UIResource
          ScrollPaneLayout 的 UI 資源版本。
 
欄位摘要
protected  JViewport colHead
          子級列標題。
protected  JScrollBar hsb
          滾動窗格的子級水平滾動條。
protected  int hsbPolicy
          水平滾動條的顯示策略。
protected  Component lowerLeft
          左下角顯示的元件。
protected  Component lowerRight
          右下角顯示的元件。
protected  JViewport rowHead
          子級行標題。
protected  Component upperLeft
          左上角顯示的元件。
protected  Component upperRight
          右上角顯示的元件。
protected  JViewport viewport
          滾動窗格的子級視口。
protected  JScrollBar vsb
          滾動窗格的子級垂直滾動條。
protected  int vsbPolicy
          垂直滾動條的顯示策略。
 
從介面 javax.swing.ScrollPaneConstants 繼承的欄位
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
 
建構子摘要
ScrollPaneLayout()
           
 
方法摘要
 void addLayoutComponent(String s, Component c)
          將指定的元件添加到佈局中。
protected  Component addSingletonComponent(Component oldC, Component newC)
          移除現有元件。
 JViewport getColumnHeader()
          返回列標題對應的 JViewport 物件。
 Component getCorner(String key)
          返回位於指定角的 Component
 JScrollBar getHorizontalScrollBar()
          返回處理水平滾動的 JScrollBar 物件。
 int getHorizontalScrollBarPolicy()
          返回水平滾動條的顯示策略。
 JViewport getRowHeader()
          返回行標題對應的 JViewport 物件。
 JScrollBar getVerticalScrollBar()
          返回處理垂直滾動的 JScrollBar 物件。
 int getVerticalScrollBarPolicy()
          返回垂直滾動條的顯示策略。
 JViewport getViewport()
          返回顯示滾動元件內容的 JViewport 物件。
 Rectangle getViewportBorderBounds(JScrollPane scrollpane)
          已過時。 從 JDK version Swing1.1 開始,由 JScrollPane.getViewportBorderBounds() 取代。
 void layoutContainer(Container parent)
          佈置滾動窗格。
 Dimension minimumLayoutSize(Container parent)
          ScrollPane 的最小大小是 insets 加上視口最小大小,加上可見標題的最小大小,加上 displayPolicy 不為 NEVER 的滾動條的最小大小。
 Dimension preferredLayoutSize(Container parent)
          ScrollPane 的首選大小是 insets 的大小加上視口的首選大小、可見標題首選大小以及滾動條的首選大小,它按照給定的當前視圖和當前滾動條策略顯示。
 void removeLayoutComponent(Component c)
          從佈局中移除指定的元件。
 void setHorizontalScrollBarPolicy(int x)
          設置水平滾動條顯示策略。
 void setVerticalScrollBarPolicy(int x)
          設置垂直滾動條的顯示策略。
 void syncWithScrollPane(JScrollPane sp)
          在 ScrollPaneLayout 被設置為 JScrollPane 的 LayoutManager 後,此方法被調用。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

viewport

protected JViewport viewport
滾動窗格的子級視口。預設情況下為空 JViewport

另請參見:
JScrollPane.setViewport(javax.swing.JViewport)

vsb

protected JScrollBar vsb
滾動窗格的子級垂直滾動條。預設情況下為 JScrollBar

另請參見:
JScrollPane.setVerticalScrollBar(javax.swing.JScrollBar)

hsb

protected JScrollBar hsb
滾動窗格的子級水平滾動條。預設情況下為 JScrollBar

另請參見:
JScrollPane.setHorizontalScrollBar(javax.swing.JScrollBar)

rowHead

protected JViewport rowHead
子級行標題。預設情況下為 null

另請參見:
JScrollPane.setRowHeader(javax.swing.JViewport)

colHead

protected JViewport colHead
子級列標題。預設情況下為 null

另請參見:
JScrollPane.setColumnHeader(javax.swing.JViewport)

lowerLeft

protected Component lowerLeft
左下角顯示的元件。預設情況下為 null

另請參見:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

lowerRight

protected Component lowerRight
右下角顯示的元件。預設情況下為 null

另請參見:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperLeft

protected Component upperLeft
左上角顯示的元件。預設情況下為 null

另請參見:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperRight

protected Component upperRight
右上角顯示的元件。預設情況下為 null

另請參見:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

vsbPolicy

protected int vsbPolicy
垂直滾動條的顯示策略。預設情況下為 ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED

該欄位已廢棄,請用 JScrollPane 欄位代替。

另請參見:
JScrollPane.setVerticalScrollBarPolicy(int)

hsbPolicy

protected int hsbPolicy
水平滾動條的顯示策略。預設情況下為 ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED

該欄位已廢棄,請用 JScrollPane 欄位代替。

另請參見:
JScrollPane.setHorizontalScrollBarPolicy(int)
建構子詳細資訊

ScrollPaneLayout

public ScrollPaneLayout()
方法詳細資訊

syncWithScrollPane

public void syncWithScrollPane(JScrollPane sp)
在 ScrollPaneLayout 被設置為 JScrollPane 的 LayoutManager 後,此方法被調用。它將初始化通常由 addLayoutComponent 設置的所有內部欄位。例如:
 ScrollPaneLayout mySPLayout = new ScrollPanelLayout() {
     public void layoutContainer(Container p) {
         super.layoutContainer(p);
         // do some extra work here ...
     }
 };
 scrollpane.setLayout(mySPLayout):
 


addSingletonComponent

protected Component addSingletonComponent(Component oldC,
                                          Component newC)
移除現有元件。當添加新的元件(如左角或垂直滾動條)時,對應的舊元件(如果有)必須移除。

該方法返回 newC。如果 oldC 不等於 newC 並且不為 null,它將從其父級移除。

參數:
oldC - 要替換的 Component
newC - 要添加的 Component
返回:
newC

addLayoutComponent

public void addLayoutComponent(String s,
                               Component c)
將指定的元件添加到佈局中。佈局通過以下內容之一標識:

指定者:
介面 LayoutManager 中的 addLayoutComponent
參數:
s - 元件標識符
c - 要添加的元件
拋出:
IllegalArgumentException - 如果 s 為無效關鍵字

removeLayoutComponent

public void removeLayoutComponent(Component c)
從佈局中移除指定的元件。

指定者:
介面 LayoutManager 中的 removeLayoutComponent
參數:
c - 要移除的元件

getVerticalScrollBarPolicy

public int getVerticalScrollBarPolicy()
返回垂直滾動條的顯示策略。

返回:
一個提供顯示策略的整數
另請參見:
setVerticalScrollBarPolicy(int)

setVerticalScrollBarPolicy

public void setVerticalScrollBarPolicy(int x)
設置垂直滾動條的顯示策略。選項有: 註:應用程序應使用該方法的 JScrollPane 版本。它僅用於此類別的 Swing 1.0.2(及更早)版本向後相容。

參數:
x - 一個提供顯示策略的整數
拋出:
IllegalArgumentException - 如果 x 為上面列出的無效垂直滾動條策略

getHorizontalScrollBarPolicy

public int getHorizontalScrollBarPolicy()
返回水平滾動條的顯示策略。

返回:
一個提供顯示策略的整數
另請參見:
setHorizontalScrollBarPolicy(int)

setHorizontalScrollBarPolicy

public void setHorizontalScrollBarPolicy(int x)
設置水平滾動條顯示策略。選項有: 註:應用程序應使用該方法的 JScrollPane 版本。它僅用於此類別的 Swing 1.0.2(及更早)版本向後相容。

參數:
x - 一個提供顯示策略的整數
拋出:
IllegalArgumentException - 如果 x 為上面列出的無效水平滾動條策略

getViewport

public JViewport getViewport()
返回顯示滾動元件內容的 JViewport 物件。

返回:
顯示滾動元件內容的 JViewport 物件
另請參見:
JScrollPane.getViewport()

getHorizontalScrollBar

public JScrollBar getHorizontalScrollBar()
返回處理水平滾動的 JScrollBar 物件。

返回:
處理水平滾動的 JScrollBar 物件
另請參見:
JScrollPane.getHorizontalScrollBar()

getVerticalScrollBar

public JScrollBar getVerticalScrollBar()
返回處理垂直滾動的 JScrollBar 物件。

返回:
處理垂直滾動的 JScrollBar 物件
另請參見:
JScrollPane.getVerticalScrollBar()

getRowHeader

public JViewport getRowHeader()
返回行標題對應的 JViewport 物件。

返回:
行標題對應的 JViewport 物件
另請參見:
JScrollPane.getRowHeader()

getColumnHeader

public JViewport getColumnHeader()
返回列標題對應的 JViewport 物件。

返回:
列標題對應的 JViewport 物件
另請參見:
JScrollPane.getColumnHeader()

getCorner

public Component getCorner(String key)
返回位於指定角的 Component

參數:
key - 用於指定角的 String
返回:
位於指定角的 Component,在 ScrollPaneConstants 中的定義;如果 key 不是四個角之一,則返回 null
另請參見:
JScrollPane.getCorner(java.lang.String)

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
ScrollPane 的首選大小是 insets 的大小加上視口的首選大小、可見標題首選大小以及滾動條的首選大小,它按照給定的當前視圖和當前滾動條策略顯示。

注意,rowHeader 是作為 width 首選大小的一部分計算的,colHeader 是作為首選大小的一部分計算的。

指定者:
介面 LayoutManager 中的 preferredLayoutSize
參數:
parent - 將被佈置的 Container
返回:
指定視口和任何滾動條的首選大小的 Dimension 物件
另請參見:
ViewportLayout, LayoutManager

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
ScrollPane 的最小大小是 insets 加上視口最小大小,加上可見標題的最小大小,加上 displayPolicy 不為 NEVER 的滾動條的最小大小。

指定者:
介面 LayoutManager 中的 minimumLayoutSize
參數:
parent - 將被佈置的 Container
返回:
指定最小大小的 Dimension 物件

layoutContainer

public void layoutContainer(Container parent)
佈置滾動窗格。元件的放置取決於以下約束:

指定者:
介面 LayoutManager 中的 layoutContainer
參數:
parent - 要佈置的 Container

getViewportBorderBounds

@Deprecated
public Rectangle getViewportBorderBounds(JScrollPane scrollpane)
已過時。 從 JDK version Swing1.1 開始,由 JScrollPane.getViewportBorderBounds() 取代。

返回圍繞指定滾動窗格視口的邊框。

返回:
視口邊框的大小和位置

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only