JavaTM 2 Platform
Standard Ed. 6

javax.swing
類別 JToolBar

java.lang.Object
  繼承者 java.awt.Component
      繼承者 java.awt.Container
          繼承者 javax.swing.JComponent
              繼承者 javax.swing.JToolBar
所有已實作的介面:
ImageObserver, MenuContainer, Serializable, Accessible, SwingConstants

public class JToolBar
extends JComponent
implements SwingConstants, Accessible

JToolBar 提供了一個用來顯示常用的 Action 或控制元件的元件。有關使用工具欄的範例和資訊,請參閱 The Java Tutorial 中的 How to Use Tool Bars 一節。

對於大多數的外觀,使用者可以將工具欄拖到單獨的視窗中(除非 floatable 屬性被設置為 false)。為了正確執行拖動,建議將 JToolBar 實例添加到容器的四“邊”中的一邊(其中容器的佈局管理器為 BorderLayout),並且不在其他四“邊”中添加任何子級。

警告:Swing 不是執行緒安全的。有關更多資訊,請參閱 Swing's Threading Policy

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

另請參見:
Action

巢狀類別摘要
protected  class JToolBar.AccessibleJToolBar
          此類別實作對 JToolBar 類別的可存取性支持。
static class JToolBar.Separator
          一個特定於工具欄的分隔符。
 
從類別 javax.swing.JComponent 繼承的巢狀類別/介面
JComponent.AccessibleJComponent
 
從類別 java.awt.Container 繼承的巢狀類別/介面
Container.AccessibleAWTContainer
 
從類別 java.awt.Component 繼承的巢狀類別/介面
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
欄位摘要
 
從類別 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
 
從介面 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
 
從介面 java.awt.image.ImageObserver 繼承的欄位
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
建構子摘要
JToolBar()
          創建新的工具欄;預設的方向為 HORIZONTAL
JToolBar(int orientation)
          創建具有指定 orientation 的新工具欄。
JToolBar(String name)
          創建一個具有指定 name 的新工具欄。
JToolBar(String name, int orientation)
          創建一個具有指定 nameorientation 的新工具欄。
 
方法摘要
 JButton add(Action a)
          添加一個指派動作的新的 JButton
protected  void addImpl(Component comp, Object constraints, int index)
          在添加 JButton 時,它最初被設置為 disabled。
 void addSeparator()
          將預設大小的分隔符添加到工具欄的末尾。
 void addSeparator(Dimension size)
          將指定大小的分隔符添加到工具欄的末尾。
protected  PropertyChangeListener createActionChangeListener(JButton b)
          返回正確配置的 PropertyChangeListener,它根據 Action 的更改對控制元件進行更新,如果需要使用預設的屬性更改偵聽器,則為 null
protected  JButton createActionComponent(Action a)
          將為 Action 創建 JButton 的處理器方法添加到 JToolBar 中。
 AccessibleContext getAccessibleContext()
          獲取與此 JToolBar 關聯的 AccessibleContext。
 Component getComponentAtIndex(int i)
          返回指定索引位置的元件。
 int getComponentIndex(Component c)
          返回指定元件的索引。
 Insets getMargin()
          返回工具欄邊框和它的按鈕之間的空白。
 int getOrientation()
          返回工具欄的當前方向。
 ToolBarUI getUI()
          返回工具欄的當前 UI。
 String getUIClassID()
          返回呈現此元件的 L&F 類別的名稱。
 boolean isBorderPainted()
          獲取 borderPainted 屬性。
 boolean isFloatable()
          獲取 floatable 屬性。
 boolean isRollover()
          返回 rollover 狀態。
protected  void paintBorder(Graphics g)
          如果 borderPainted 屬性為 true,則繪製工具欄邊框。
protected  String paramString()
          返回此 JToolBar 的字元串表示形式。
 void setBorderPainted(boolean b)
          設置 borderPainted 屬性,如果需要繪製邊框,則此屬性為 true
 void setFloatable(boolean b)
          設置 floatable 屬性,如果要移動工具欄,此屬性必須設置為 true
 void setLayout(LayoutManager mgr)
          設置此容器的佈局管理器。
 void setMargin(Insets m)
          設置工具欄邊框和它的按鈕之間的空白。
 void setOrientation(int o)
          設置工具欄的方向。
 void setRollover(boolean rollover)
          設置此工具欄的 rollover 狀態。
 void setUI(ToolBarUI ui)
          設置呈現此元件的 L&F 物件。
 void updateUI()
          UIFactory 發出的關於 L&F 已更改的通知。
 
從類別 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, getInsets, getInsets, 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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, 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, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, 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, 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
 

建構子詳細資訊

JToolBar

public JToolBar()
創建新的工具欄;預設的方向為 HORIZONTAL


JToolBar

public JToolBar(int orientation)
創建具有指定 orientation 的新工具欄。orientation 不是 HORIZONTAL 就是 VERTICAL

參數:
orientation - 預期的方向

JToolBar

public JToolBar(String name)
創建一個具有指定 name 的新工具欄。名稱用作浮動式 (undocked) 工具欄的標題。預設的方向為 HORIZONTAL

參數:
name - 工具欄的名稱
從以下版本開始:
1.3

JToolBar

public JToolBar(String name,
                int orientation)
創建一個具有指定 nameorientation 的新工具欄。所有其他建構子均調用此建構子。如果 orientation 是一個無效值,則將拋出異常。

參數:
name - 工具欄的名稱
orientation - 初始方向,它不是 HORIZONTAL 就是 VERTICAL
拋出:
IllegalArgumentException - 如果方向既不是 HORIZONTAL 也不是 VERTICAL
從以下版本開始:
1.3
方法詳細資訊

getUI

public ToolBarUI getUI()
返回工具欄的當前 UI。

另請參見:
setUI(javax.swing.plaf.ToolBarUI)

setUI

public void setUI(ToolBarUI ui)
設置呈現此元件的 L&F 物件。

參數:
ui - ToolBarUI L&F 物件
另請參見:
UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
UIFactory 發出的關於 L&F 已更改的通知。調用該方法,從而用 UIFactory 的最新版本來替換 UI。

覆寫:
類別 JComponent 中的 updateUI
另請參見:
JComponent.updateUI()

getUIClassID

public String getUIClassID()
返回呈現此元件的 L&F 類別的名稱。

覆寫:
類別 JComponent 中的 getUIClassID
返回:
字元串 "ToolBarUI"
另請參見:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

getComponentIndex

public int getComponentIndex(Component c)
返回指定元件的索引。(註:分隔符佔用索引位置)。

參數:
c - 要尋找的 Component
返回:
指示元件位置的整數,此數從 0 開始

getComponentAtIndex

public Component getComponentAtIndex(int i)
返回指定索引位置的元件。

參數:
i - 元件的位置,從 0 開始
返回:
在該位置的 Component,如果索引無效則返回 null

setMargin

public void setMargin(Insets m)
設置工具欄邊框和它的按鈕之間的空白。設置為 null 將導致工具欄使用預設的空白。工具欄的預設 Border 物件使用此值來創建正確的空白。不過,如果在工具欄上設置了非預設邊框,則由 Border 物件負責創建適當的空白(否則此屬性將被忽略)。

參數:
m - Insets 物件,它定義了邊框和按鈕之間的空間
另請參見:
Insets

getMargin

public Insets getMargin()
返回工具欄邊框和它的按鈕之間的空白。

返回:
包含空白值的 Insets 物件
另請參見:
Insets

isBorderPainted

public boolean isBorderPainted()
獲取 borderPainted 屬性。

返回:
borderPainted 屬性的值
另請參見:
setBorderPainted(boolean)

setBorderPainted

public void setBorderPainted(boolean b)
設置 borderPainted 屬性,如果需要繪製邊框,則此屬性為 true。此屬性的預設值為 true。某些外觀可能不繪製邊框,它們將忽略此屬性。

參數:
b - 如果為 true,則繪製邊框
另請參見:
isBorderPainted()

paintBorder

protected void paintBorder(Graphics g)
如果 borderPainted 屬性為 true,則繪製工具欄邊框。

覆寫:
類別 JComponent 中的 paintBorder
參數:
g - Graphics 上下文,繪製在此上下文中完成
另請參見:
JComponent.paint(java.awt.Graphics), JComponent.setBorder(javax.swing.border.Border)

isFloatable

public boolean isFloatable()
獲取 floatable 屬性。

返回:
floatable 屬性的值
另請參見:
setFloatable(boolean)

setFloatable

public void setFloatable(boolean b)
設置 floatable 屬性,如果要移動工具欄,此屬性必須設置為 true。通常,可以將浮動工具欄拖動到同一個容器中的不同位置,或者拖動到自己的視窗中。此屬性的預設值為 true。某些外觀可能不實作浮動工具欄,它們將忽略此屬性。

參數:
b - 如果為 true,則工具欄可以移動;如果為 false,則工具欄不能移動
另請參見:
isFloatable()

getOrientation

public int getOrientation()
返回工具欄的當前方向。值不是 HORIZONTAL 就是 VERTICAL

返回:
表示當前方向的整數 -- 不是 HORIZONTAL 就是 VERTICAL
另請參見:
setOrientation(int)

setOrientation

public void setOrientation(int o)
設置工具欄的方向。方向不是 HORIZONTAL 就是 VERTICAL。如果 orientation 是一個無效值,則將拋出異常。

參數:
o - 新的方向,不是 HORIZONTAL 就是 VERTICAL
拋出:
IllegalArgumentException - 如果方向既不是 HORIZONTAL 也不是 VERTICAL
另請參見:
getOrientation()

setRollover

public void setRollover(boolean rollover)
設置此工具欄的 rollover 狀態。如果 rollover 狀態為 true,則僅當鼠標指針懸停在工具欄按鈕上時,才繪製該工具欄按鈕的邊框。此屬性的預設值為 false。

外觀的實作可以選擇忽略此屬性。

參數:
rollover - 如果翻轉工具欄按鈕,則為 true;否則為 false
從以下版本開始:
1.4

isRollover

public boolean isRollover()
返回 rollover 狀態。

返回:
如果繪製 rollover 工具欄按鈕,則返回 true;否則返回 false
從以下版本開始:
1.4
另請參見:
setRollover(boolean)

addSeparator

public void addSeparator()
將預設大小的分隔符添加到工具欄的末尾。預設大小由當前外觀確定。


addSeparator

public void addSeparator(Dimension size)
將指定大小的分隔符添加到工具欄的末尾。

參數:
size - 分隔符的 Dimension

add

public JButton add(Action a)
添加一個指派動作的新的 JButton

參數:
a - 要作為一個新的選單項添加的 Action 物件
返回:
用來指派動作的新按鈕

createActionComponent

protected JButton createActionComponent(Action a)
將為 Action 創建 JButton 的處理器方法添加到 JToolBar 中。如果傳遞了一個 null 操作,則預設名稱為空。

參數:
a - 要添加的按鈕的 Action
返回:
新創建的按鈕
從以下版本開始:
1.3
另請參見:
Action

createActionChangeListener

protected PropertyChangeListener createActionChangeListener(JButton b)
返回正確配置的 PropertyChangeListener,它根據 Action 的更改對控制元件進行更新,如果需要使用預設的屬性更改偵聽器,則為 null


addImpl

protected void addImpl(Component comp,
                       Object constraints,
                       int index)
在添加 JButton 時,它最初被設置為 disabled。

覆寫:
類別 Container 中的 addImpl
參數:
comp - 要增強的元件
constraints - 元件上強制要求的約束
index - 元件的索引
另請參見:
Container.add(Component), Container.add(Component, int), Container.add(Component, java.lang.Object), LayoutManager, LayoutManager2

paramString

protected String paramString()
返回此 JToolBar 的字元串表示形式。此方法僅在進行除錯的時候使用,對於各個實作,所返回字元串的內容和格式可能有所不同。返回的字元串可以為空,但不可以為 null

覆寫:
類別 JComponent 中的 paramString
返回:
JToolBar 的字元串表示形式。

setLayout

public void setLayout(LayoutManager mgr)
從類別 Container 複製的描述
設置此容器的佈局管理器。

覆寫:
類別 Container 中的 setLayout
參數:
mgr - 指定的佈局管理器
另請參見:
Container.doLayout(), Container.getLayout()

getAccessibleContext

public AccessibleContext getAccessibleContext()
獲取與此 JToolBar 關聯的 AccessibleContext。對於工具欄,AccessibleContext 採用 AccessibleJToolBar 的形式。必要時創建新的 AccessibleJToolBar 實例。

指定者:
介面 Accessible 中的 getAccessibleContext
覆寫:
類別 JComponent 中的 getAccessibleContext
返回:
一個 AccessibleJToolBar,它充當此 JToolBar 的 AccessibleContext

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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