JavaTM 2 Platform
Standard Ed. 6

javax.swing.plaf.basic
類別 BasicScrollBarUI

java.lang.Object
  繼承者 javax.swing.plaf.ComponentUI
      繼承者 javax.swing.plaf.ScrollBarUI
          繼承者 javax.swing.plaf.basic.BasicScrollBarUI
所有已實作的介面:
LayoutManager, SwingConstants
直接已知子類別:
MetalScrollBarUI

public class BasicScrollBarUI
extends ScrollBarUI
implements LayoutManager, SwingConstants

基本外觀的 ScrollBarUI 的實作


巢狀類別摘要
protected  class BasicScrollBarUI.ArrowButtonListener
          鼠標鍵的偵聽器。
protected  class BasicScrollBarUI.ModelListener
          偵聽模型更改的偵聽器。
 class BasicScrollBarUI.PropertyChangeHandler
           
protected  class BasicScrollBarUI.ScrollListener
          在 ScrollPane 中發起的滾動事件的偵聽器。
protected  class BasicScrollBarUI.TrackListener
          追蹤鼠標拖動。
 
欄位摘要
protected  BasicScrollBarUI.ArrowButtonListener buttonListener
           
protected  JButton decrButton
           
protected static int DECREASE_HIGHLIGHT
           
protected  JButton incrButton
           
protected static int INCREASE_HIGHLIGHT
           
protected  boolean isDragging
           
protected  Dimension maximumThumbSize
           
protected  Dimension minimumThumbSize
           
protected  BasicScrollBarUI.ModelListener modelListener
           
protected static int NO_HIGHLIGHT
           
protected  PropertyChangeListener propertyChangeListener
           
protected  JScrollBar scrollbar
           
protected  BasicScrollBarUI.ScrollListener scrollListener
           
protected  Timer scrollTimer
           
protected  Color thumbColor
           
protected  Color thumbDarkShadowColor
           
protected  Color thumbHighlightColor
           
protected  Color thumbLightShadowColor
           
protected  Rectangle thumbRect
           
protected  Color trackColor
           
protected  int trackHighlight
           
protected  Color trackHighlightColor
           
protected  BasicScrollBarUI.TrackListener trackListener
           
protected  Rectangle trackRect
           
 
從介面 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
 
建構子摘要
BasicScrollBarUI()
           
 
方法摘要
 void addLayoutComponent(String name, Component child)
          如果佈局管理器使用每元件字元串,則將元件 comp 添加到佈局,並將它與 name 指定的字元串關聯。
protected  void configureScrollBarColors()
           
protected  BasicScrollBarUI.ArrowButtonListener createArrowButtonListener()
           
protected  JButton createDecreaseButton(int orientation)
           
protected  JButton createIncreaseButton(int orientation)
           
protected  BasicScrollBarUI.ModelListener createModelListener()
           
protected  PropertyChangeListener createPropertyChangeListener()
           
protected  BasicScrollBarUI.ScrollListener createScrollListener()
           
protected  BasicScrollBarUI.TrackListener createTrackListener()
           
static ComponentUI createUI(JComponent c)
           
 Dimension getMaximumSize(JComponent c)
          返回指定元件的適合外觀的最大大小。
protected  Dimension getMaximumThumbSize()
          返回 thumb 的最大可接受大小。
protected  Dimension getMinimumThumbSize()
          返回 thumb 的最小可接受大小。
 Dimension getPreferredSize(JComponent c)
          垂直滾動條的首選寬度是(非 null)遞增/遞減按鈕的首選寬度的最大值,也是 thumb 的最小寬度。
 boolean getSupportsAbsolutePositioning()
          指示使用者是否可以利用鼠標動作(通常使用中間的鼠標按鍵)來絕對定位 thumb。
protected  Rectangle getThumbBounds()
          返回 thumb 的當前大小/位置。
protected  Rectangle getTrackBounds()
          返回滑道的當前邊界,即遞增和遞減按鈕之間的空間(減去 insets)。
protected  void installComponents()
           
protected  void installDefaults()
           
protected  void installKeyboardActions()
           
protected  void installListeners()
           
 void installUI(JComponent c)
          配置指定元件,使其適合外觀。
 boolean isThumbRollover()
          如果鼠標當前位於 thumb 上,則返回 true。
 void layoutContainer(Container scrollbarContainer)
          佈置指定容器。
protected  void layoutHScrollbar(JScrollBar sb)
           
protected  void layoutVScrollbar(JScrollBar sb)
           
 Dimension minimumLayoutSize(Container scrollbarContainer)
          給定指定容器所包含的元件,計算該容器的最小大小維數。
 void paint(Graphics g, JComponent c)
          繪製指定元件,使其適合外觀。
protected  void paintDecreaseHighlight(Graphics g)
           
protected  void paintIncreaseHighlight(Graphics g)
           
protected  void paintThumb(Graphics g, JComponent c, Rectangle thumbBounds)
           
protected  void paintTrack(Graphics g, JComponent c, Rectangle trackBounds)
           
 Dimension preferredLayoutSize(Container scrollbarContainer)
          給定指定容器所包含的元件,計算該容器的首選大小維數。
 void removeLayoutComponent(Component child)
          從佈局移除指定元件。
protected  void scrollByBlock(int direction)
           
protected  void scrollByUnit(int direction)
           
protected  void setThumbBounds(int x, int y, int width, int height)
          設置 thumb 的邊界並強制進行包括新舊 thumbBounds 在內的重繪。
protected  void setThumbRollover(boolean active)
          設置鼠標當前是否位於 thumb 上。
protected  void uninstallComponents()
           
protected  void uninstallDefaults()
           
protected  void uninstallKeyboardActions()
           
protected  void uninstallListeners()
           
 void uninstallUI(JComponent c)
          在 installUI 期間,在指定元件上反向執行的配置操作。
 
從類別 javax.swing.plaf.ComponentUI 繼承的方法
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMinimumSize, update
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

minimumThumbSize

protected Dimension minimumThumbSize

maximumThumbSize

protected Dimension maximumThumbSize

thumbHighlightColor

protected Color thumbHighlightColor

thumbLightShadowColor

protected Color thumbLightShadowColor

thumbDarkShadowColor

protected Color thumbDarkShadowColor

thumbColor

protected Color thumbColor

trackColor

protected Color trackColor

trackHighlightColor

protected Color trackHighlightColor

scrollbar

protected JScrollBar scrollbar

incrButton

protected JButton incrButton

decrButton

protected JButton decrButton

isDragging

protected boolean isDragging

trackListener

protected BasicScrollBarUI.TrackListener trackListener

buttonListener

protected BasicScrollBarUI.ArrowButtonListener buttonListener

modelListener

protected BasicScrollBarUI.ModelListener modelListener

thumbRect

protected Rectangle thumbRect

trackRect

protected Rectangle trackRect

trackHighlight

protected int trackHighlight

NO_HIGHLIGHT

protected static final int NO_HIGHLIGHT
另請參見:
常數欄位值

DECREASE_HIGHLIGHT

protected static final int DECREASE_HIGHLIGHT
另請參見:
常數欄位值

INCREASE_HIGHLIGHT

protected static final int INCREASE_HIGHLIGHT
另請參見:
常數欄位值

scrollListener

protected BasicScrollBarUI.ScrollListener scrollListener

propertyChangeListener

protected PropertyChangeListener propertyChangeListener

scrollTimer

protected Timer scrollTimer
建構子詳細資訊

BasicScrollBarUI

public BasicScrollBarUI()
方法詳細資訊

createUI

public static ComponentUI createUI(JComponent c)

configureScrollBarColors

protected void configureScrollBarColors()

installUI

public void installUI(JComponent c)
從類別 ComponentUI 複製的描述
配置指定元件,使其適合外觀。當 ComponentUI 實例將作為 UI 委託安裝在指定元件上時,可調用此方法。此方法應該為外觀完整地配置元件,包括以下方面:
  1. 在元件上安裝用於顏色、字體、邊框、圖標、不透明性等方面的所有預設屬性值。只要有可能,就 應該覆寫由客戶端程序初始化的屬性值。
  2. 如有必要,可在元件上安裝一個 LayoutManager
  3. 將所需的所有子元件創建/添加到元件中。
  4. 在元件上創建/安裝事件偵聽器。
  5. 為了檢測和適當回應元件屬性更改,可在元件上創建/安裝一個 PropertyChangeListener
  6. 在元件上安裝鍵盤 UI(助記符、遍歷等等)。
  7. 初始化任何適當的實例資料。

覆寫:
類別 ComponentUI 中的 installUI
參數:
c - 將安裝此 UI 委託的元件
另請參見:
ComponentUI.uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

uninstallUI

public void uninstallUI(JComponent c)
從類別 ComponentUI 複製的描述
installUI 期間,在指定元件上反向執行的配置操作。當此 UIComponent 實例將作為 UI 委託從指定元件上移除時,可調用此方法。此方法應該取消在 installUI 中執行的配置操作,非常小心地使 JComponent 實例處於某種潔淨狀態(沒有額外的偵聽器、沒有特定於外觀的屬性物件等等)。配置內容應該套件括以下方面:
  1. 從元件中移除所有 UI 設置的邊框。
  2. 從元件上移除所有 UI 設置的佈局管理器。
  3. 從元件中移除所有 UI 添加的子元件。
  4. 從元件中移除所有 UI 添加的事件/屬性偵聽器。
  5. 從元件中移除所有 UI 安裝的鍵盤 UI。
  6. 使所有已分派的實例資料物件無效,從而允許進行 GC 操作。

覆寫:
類別 ComponentUI 中的 uninstallUI
參數:
c - 從中移除此 UI 委託的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數
另請參見:
ComponentUI.installUI(javax.swing.JComponent), JComponent.updateUI()

installDefaults

protected void installDefaults()

installComponents

protected void installComponents()

uninstallComponents

protected void uninstallComponents()

installListeners

protected void installListeners()

installKeyboardActions

protected void installKeyboardActions()

uninstallKeyboardActions

protected void uninstallKeyboardActions()

uninstallListeners

protected void uninstallListeners()

uninstallDefaults

protected void uninstallDefaults()

createTrackListener

protected BasicScrollBarUI.TrackListener createTrackListener()

createArrowButtonListener

protected BasicScrollBarUI.ArrowButtonListener createArrowButtonListener()

createModelListener

protected BasicScrollBarUI.ModelListener createModelListener()

createScrollListener

protected BasicScrollBarUI.ScrollListener createScrollListener()

createPropertyChangeListener

protected PropertyChangeListener createPropertyChangeListener()

setThumbRollover

protected void setThumbRollover(boolean active)
設置鼠標當前是否位於 thumb 上。

參數:
active - 為 true 指示 thumb 當前處於啟動狀態。
從以下版本開始:
1.5

isThumbRollover

public boolean isThumbRollover()
如果鼠標當前位於 thumb 上,則返回 true。

返回:
如果 thumb 當前處於啟動狀態,則返回 true
從以下版本開始:
1.5

paint

public void paint(Graphics g,
                  JComponent c)
從類別 ComponentUI 複製的描述
繪製指定元件,使其適合外觀。在將要繪製指定元件時,從 ComponentUI.update 方法中調用此方法。子類別應該覆寫此方法並使用指定 Graphics 物件來呈現元件的內容。

覆寫:
類別 ComponentUI 中的 paint
參數:
g - 將在其中進行繪製的 Graphics 上下文
c - 將繪製的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數
另請參見:
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)

getPreferredSize

public Dimension getPreferredSize(JComponent c)
垂直滾動條的首選寬度是(非 null)遞增/遞減按鈕的首選寬度的最大值,也是 thumb 的最小寬度。首選高度是相同部分的首選高度之和。水平滾動條的首選大小的基礎與此類似。

preferredSize 僅計算一次,此方法的後續調用僅返回快取記憶體的大小。

覆寫:
類別 ComponentUI 中的 getPreferredSize
參數:
c - 委託此方法的 JScrollBar
返回:
Basic JScrollBar 的首選大小
另請參見:
getMaximumSize(javax.swing.JComponent), ComponentUI.getMinimumSize(javax.swing.JComponent)

getMaximumSize

public Dimension getMaximumSize(JComponent c)
從類別 ComponentUI 複製的描述
返回指定元件的適合外觀的最大大小。如果返回 null,則最大大小將由元件的佈局管理器計算(對於安裝了特定佈局管理器的元件而言,這是首選方法)。此方法的預設實作調用 getPreferredSize 並返回該值。

覆寫:
類別 ComponentUI 中的 getMaximumSize
參數:
c - 委託此方法的 JScrollBar。
返回:
新的 Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);
另請參見:
ComponentUI.getMinimumSize(javax.swing.JComponent), getPreferredSize(javax.swing.JComponent)

createDecreaseButton

protected JButton createDecreaseButton(int orientation)

createIncreaseButton

protected JButton createIncreaseButton(int orientation)

paintDecreaseHighlight

protected void paintDecreaseHighlight(Graphics g)

paintIncreaseHighlight

protected void paintIncreaseHighlight(Graphics g)

paintTrack

protected void paintTrack(Graphics g,
                          JComponent c,
                          Rectangle trackBounds)

paintThumb

protected void paintThumb(Graphics g,
                          JComponent c,
                          Rectangle thumbBounds)

getMinimumThumbSize

protected Dimension getMinimumThumbSize()
返回 thumb 的最小可接受大小。如果滾動條變得非常小,此大小不適用,則 thumb 將被隱藏。

警告:不應修改此方法返回的值,它是一個共享的靜態常數。

返回:
thumb 的最小可接受大小。
另請參見:
getMaximumThumbSize()

getMaximumThumbSize

protected Dimension getMaximumThumbSize()
返回 thumb 的最大可接受大小。要創建固定大小的 thumb,需要讓此方法和 getMinimumThumbSize 返回相同的值。

警告:不應修改此方法返回的值,它是一個共享的靜態常數。

返回:
thumb 的最大可接受大小。
另請參見:
getMinimumThumbSize()

addLayoutComponent

public void addLayoutComponent(String name,
                               Component child)
從介面 LayoutManager 複製的描述
如果佈局管理器使用每元件字元串,則將元件 comp 添加到佈局,並將它與 name 指定的字元串關聯。

指定者:
介面 LayoutManager 中的 addLayoutComponent
參數:
name - 要與元件關聯的字元串
child - 要添加的元件

removeLayoutComponent

public void removeLayoutComponent(Component child)
從介面 LayoutManager 複製的描述
從佈局移除指定元件。

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

preferredLayoutSize

public Dimension preferredLayoutSize(Container scrollbarContainer)
從介面 LayoutManager 複製的描述
給定指定容器所包含的元件,計算該容器的首選大小維數。

指定者:
介面 LayoutManager 中的 preferredLayoutSize
參數:
scrollbarContainer - 要佈置的容器
另請參見:
LayoutManager.minimumLayoutSize(java.awt.Container)

minimumLayoutSize

public Dimension minimumLayoutSize(Container scrollbarContainer)
從介面 LayoutManager 複製的描述
給定指定容器所包含的元件,計算該容器的最小大小維數。

指定者:
介面 LayoutManager 中的 minimumLayoutSize
參數:
scrollbarContainer - 要佈置的元件

layoutVScrollbar

protected void layoutVScrollbar(JScrollBar sb)

layoutHScrollbar

protected void layoutHScrollbar(JScrollBar sb)

layoutContainer

public void layoutContainer(Container scrollbarContainer)
從介面 LayoutManager 複製的描述
佈置指定容器。

指定者:
介面 LayoutManager 中的 layoutContainer
參數:
scrollbarContainer - 要佈置的容器

setThumbBounds

protected void setThumbBounds(int x,
                              int y,
                              int width,
                              int height)
設置 thumb 的邊界並強制進行包括新舊 thumbBounds 在內的重繪。

另請參見:
getThumbBounds()

getThumbBounds

protected Rectangle getThumbBounds()
返回 thumb 的當前大小/位置。

警告:不應修改此方法返回的值,它是一個到實際矩形的參考,而不是一個副本。

返回:
thumb 的當前大小/位置。
另請參見:
setThumbBounds(int, int, int, int)

getTrackBounds

protected Rectangle getTrackBounds()
返回滑道的當前邊界,即遞增和遞減按鈕之間的空間(減去 insets)。每次佈置滾動條時(確認後)此方法返回的值都會更新。

警告:不應修改此方法返回的值,它是一個到實際矩形的參考,而不是一個副本。

返回:
滾動條滑道的當前邊界
另請參見:
layoutContainer(java.awt.Container)

scrollByBlock

protected void scrollByBlock(int direction)

scrollByUnit

protected void scrollByUnit(int direction)

getSupportsAbsolutePositioning

public boolean getSupportsAbsolutePositioning()
指示使用者是否可以利用鼠標動作(通常使用中間的鼠標按鍵)來絕對定位 thumb。

返回:
如果鼠標運行可以絕對定位 thumb,則返回 true
從以下版本開始:
1.5

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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