|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.swing.plaf.ComponentUI javax.swing.plaf.TreeUI javax.swing.plaf.basic.BasicTreeUI
public class BasicTreeUI
層次資料結構的基本 L&F。
巢狀類別摘要 | |
---|---|
class |
BasicTreeUI.CellEditorHandler
偵聽器負責獲取單元格編輯事件並相應地更新階層樹。 |
class |
BasicTreeUI.ComponentHandler
滾動時更新首選大小(如果需要)。 |
class |
BasicTreeUI.FocusHandler
失去/獲得焦點時重繪前導選擇行。 |
class |
BasicTreeUI.KeyHandler
用於獲取多個按鍵事件以適當產生事件。 |
class |
BasicTreeUI.MouseHandler
TreeMouseListener 負責基於鼠標事件更新選擇。 |
class |
BasicTreeUI.MouseInputHandler
在將鼠標釋放到用於建構 MouseInputHandler 的目的地之前,它一直負責傳遞所有鼠標事件,包括鼠標移動事件。 |
class |
BasicTreeUI.NodeDimensionsHandler
負責獲取節點大小的類別,其方法被轉發到 BasicTreeUI 方法。 |
class |
BasicTreeUI.PropertyChangeHandler
階層樹的 PropertyChangeListener。 |
class |
BasicTreeUI.SelectionModelPropertyChangeHandler
TreeSelectionModel 上的偵聽器,如果模型的任何屬性發生更改,則重置行選擇。 |
class |
BasicTreeUI.TreeCancelEditingAction
執行操作時調用 cancelEditing 的 ActionListener。 |
class |
BasicTreeUI.TreeExpansionHandler
更新 TreeState 以回應節點的展開/折疊。 |
class |
BasicTreeUI.TreeHomeAction
TreeHomeAction 用於處理 end/home 動作。 |
class |
BasicTreeUI.TreeIncrementAction
TreeIncrementAction 用於處理向上/向下操作。 |
class |
BasicTreeUI.TreeModelHandler
將所有 TreeModel 事件轉發到 TreeState。 |
class |
BasicTreeUI.TreePageAction
TreePageAction 處理向上翻頁和向下翻頁事件。 |
class |
BasicTreeUI.TreeSelectionHandler
偵聽選擇模型中的更改並相應地更新顯示。 |
class |
BasicTreeUI.TreeToggleAction
對於第一個選定行展開將被切換。 |
class |
BasicTreeUI.TreeTraverseAction
TreeTraverseAction
是用於向左/向右方向鍵的動作。 |
欄位摘要 | |
---|---|
protected TreeCellEditor |
cellEditor
階層樹的編輯器。 |
protected Icon |
collapsedIcon
|
protected boolean |
createdCellEditor
如果當前位於階層樹中的編輯器由此實例創建,則設置為 true。 |
protected boolean |
createdRenderer
如果當前在階層樹中使用的渲染器由此實例創建,則設置為 true。 |
protected TreeCellRenderer |
currentCellRenderer
要用於進行實際單元格繪製的渲染器。 |
protected int |
depthOffset
要正確計算 x 位置應該偏移的深度。 |
protected Hashtable<TreePath,Boolean> |
drawingCache
用於最小化垂直線的繪製。 |
protected Component |
editingComponent
編輯時,它將是進行實際編輯的 Component。 |
protected TreePath |
editingPath
要編輯的路徑。 |
protected int |
editingRow
要編輯的行。 |
protected boolean |
editorHasDifferentSize
如果編輯器的大小不同於渲染器,則設置為 true。 |
protected Icon |
expandedIcon
|
protected boolean |
largeModel
如果對 largeModel 進行優化,則為 True。 |
protected int |
lastSelectedRow
上一次選中行的索引。 |
protected int |
leftChildIndent
從左頁邊空白到將繪製垂直虛線的位置之間的距離。 |
protected AbstractLayoutCache.NodeDimensions |
nodeDimensions
負責告知 TreeState 節點所需的大小。 |
protected Dimension |
preferredMinSize
最小首選大小。 |
protected Dimension |
preferredSize
完全顯示所有節點所需的大小。 |
protected CellRendererPane |
rendererPane
用於繪製 TreeCellRenderer。 |
protected int |
rightChildIndent
添加到 leftChildIndent 以確定將繪製單元格內容的位置的距離。 |
protected boolean |
stopEditingInCompleteEditing
編輯時設置為 false,shouldSelectCell() 返回 true 表示應該在編輯前選中節點,在 completeEditing 中使用該欄位。 |
protected int |
totalChildIndent
將縮進的總距離。 |
protected JTree |
tree
要在其中進行繪製的元件。 |
protected TreeModel |
treeModel
用於確定要顯示的內容。 |
protected TreeSelectionModel |
treeSelectionModel
維護選擇的模型。 |
protected AbstractLayoutCache |
treeState
負責處理大小和展開問題的物件。 |
protected boolean |
validCachedPreferredSize
preferredSize 是否有效? |
建構子摘要 | |
---|---|
BasicTreeUI()
|
方法摘要 | |
---|---|
void |
cancelEditing(JTree tree)
取消當前編輯Session。 |
protected void |
checkForClickInExpandControl(TreePath path,
int mouseX,
int mouseY)
如果 mouseX 和 mouseY 位於 row 的展開/折疊區域內,則此方法將切換行。 |
protected void |
completeEditing()
傳遞訊息以停止編輯Session。 |
protected void |
completeEditing(boolean messageStop,
boolean messageCancel,
boolean messageTree)
停止編輯Session。 |
protected void |
completeUIInstall()
在安裝所有預設值/偵聽器之後根據 installUI 調用。 |
protected void |
completeUIUninstall()
|
protected void |
configureLayoutCache()
基於為其提供外觀的階層樹重置 TreeState 實例。 |
protected CellEditorListener |
createCellEditorListener()
創建在當前編輯器中處理事件的偵聽器。 |
protected CellRendererPane |
createCellRendererPane()
返回用於放置渲染器元件的渲染器窗格。 |
protected ComponentListener |
createComponentListener()
創建並返回新的 ComponentHandler。 |
protected TreeCellEditor |
createDefaultCellEditor()
創建預設單元格編輯器。 |
protected TreeCellRenderer |
createDefaultCellRenderer()
返回用於為每個節點添加標誌的預設單元格渲染器。 |
protected FocusListener |
createFocusListener()
創建失去/獲取焦點時負責更新顯示的偵聽器。 |
protected KeyListener |
createKeyListener()
創建負責從階層樹獲取鍵事件的偵聽器。 |
protected AbstractLayoutCache |
createLayoutCache()
創建負責管理展開內容及節點大小的物件。 |
protected MouseListener |
createMouseListener()
創建負責基於鼠標事件更新選擇的偵聽器。 |
protected AbstractLayoutCache.NodeDimensions |
createNodeDimensions()
創建能夠確定階層樹中給定節點大小的 NodeDimensions 的實例。 |
protected PropertyChangeListener |
createPropertyChangeListener()
創建負責基於階層樹的更改方式更新 UI 的偵聽器。 |
protected PropertyChangeListener |
createSelectionModelPropertyChangeListener()
創建負責從選擇模型獲取屬性更改事件的偵聽器。 |
protected TreeExpansionListener |
createTreeExpansionListener()
創建並返回在節點展開狀態更改時負責更新 treestate 的物件。 |
protected TreeModelListener |
createTreeModelListener()
返回可以在模型更改時更新階層樹的偵聽器。 |
protected TreeSelectionListener |
createTreeSelectionListener()
創建基於選擇更改方法更新顯示的偵聽器。 |
static ComponentUI |
createUI(JComponent x)
|
protected void |
drawCentered(Component c,
Graphics graphics,
Icon icon,
int x,
int y)
|
protected void |
drawDashedHorizontalLine(Graphics g,
int y,
int x1,
int x2)
|
protected void |
drawDashedVerticalLine(Graphics g,
int x,
int y1,
int y2)
|
protected void |
ensureRowsAreVisible(int beginRow,
int endRow)
確保 beginRow 通過 endRow 標識的行是可見的。 |
int |
getBaseline(JComponent c,
int width,
int height)
返回基線。 |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior(JComponent c)
返回一個列舉,它指示元件的基線如何隨大小的改變而發生更改。 |
protected TreeCellEditor |
getCellEditor()
|
protected TreeCellRenderer |
getCellRenderer()
返回 currentCellRenderer,可以為階層樹渲染器,也可以為 defaultCellRenderer,無論哪個都不為 null。 |
TreePath |
getClosestPathForLocation(JTree tree,
int x,
int y)
返回到達最接近於 x,y 的那個節點的路徑。 |
Icon |
getCollapsedIcon()
|
TreePath |
getEditingPath(JTree tree)
返回到達正被編輯的元素的路徑。 |
Icon |
getExpandedIcon()
|
protected Color |
getHashColor()
|
protected int |
getHorizontalLegBuffer()
預設情況下,節點間支路的水平元素開始於子節點左側的右邊。 |
protected TreePath |
getLastChildPath(TreePath parent)
返回到 parent 的最後一個子節點的路徑。 |
int |
getLeftChildIndent()
|
Dimension |
getMaximumSize(JComponent c)
返回此元件的最大大小,如果實例當前位於 JTree 中或 0, 0 處,則該大小將為首選大小。 |
Dimension |
getMinimumSize(JComponent c)
返回此元件的最小大小。 |
protected TreeModel |
getModel()
|
Rectangle |
getPathBounds(JTree tree,
TreePath path)
返回封閉標籤部分的 Rectangle,路徑中的最後一個項將在這一部分繪製。 |
TreePath |
getPathForRow(JTree tree,
int row)
返回傳入的 row 的路徑。 |
Dimension |
getPreferredMinSize()
返回最小首選大小。 |
Dimension |
getPreferredSize(JComponent c)
返回首選大小以正確顯示階層樹,這是一種 getPreferredSize(c, false) 的替代方法。 |
Dimension |
getPreferredSize(JComponent c,
boolean checkConsistancy)
返回首選大小以表示 c 中的階層樹。 |
int |
getRightChildIndent()
|
int |
getRowCount(JTree tree)
返回將顯示的行數。 |
int |
getRowForPath(JTree tree,
TreePath path)
返回可在其中看見路徑中標識的最後一個項的行。 |
protected int |
getRowHeight()
|
protected int |
getRowX(int row,
int depth)
返回沿 x 軸呈現特定行的位置。 |
protected TreeSelectionModel |
getSelectionModel()
|
protected boolean |
getShowsRootHandles()
|
protected int |
getVerticalLegBuffer()
預設情況下,節點間支路的垂直元素開始於父節點的底部。 |
protected void |
handleExpandControlClick(TreePath path,
int mouseX,
int mouseY)
當使用者單擊特定行時傳遞訊息,此方法調用 toggleExpandState。 |
protected void |
installComponents()
安裝作為渲染器窗格的階層樹的子元件。 |
protected void |
installDefaults()
|
protected void |
installKeyboardActions()
|
protected void |
installListeners()
|
void |
installUI(JComponent c)
配置指定元件,使其適合外觀。 |
protected boolean |
isEditable()
|
boolean |
isEditing(JTree tree)
如果階層樹正被編輯,則返回 true。 |
protected boolean |
isLargeModel()
|
protected boolean |
isLeaf(int row)
|
protected boolean |
isLocationInExpandControl(TreePath path,
int mouseX,
int mouseY)
如果 mouseX 和 mouseY 落在用於展開/折疊節點的行的區域內,並且 row 的節點不表示葉節點,則返回 true。 |
protected boolean |
isMultiSelectEvent(MouseEvent event)
返回 true 表示節點上的鼠標事件應該根據錨點作出選擇。 |
protected boolean |
isRootVisible()
|
protected boolean |
isToggleEvent(MouseEvent event)
返回 true 指示應該基於事件切換鼠標下的行。 |
protected boolean |
isToggleSelectionEvent(MouseEvent event)
返回 true 表示節點上的鼠標事件應該僅切換鼠標下的行的選擇。 |
void |
paint(Graphics g,
JComponent c)
繪製指定元件,使其適合外觀。 |
protected void |
paintExpandControl(Graphics g,
Rectangle clipBounds,
Insets insets,
Rectangle bounds,
TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
繪製 row 的展開(切換)部分。 |
protected void |
paintHorizontalLine(Graphics g,
JComponent c,
int y,
int left,
int right)
繪製水平線。 |
protected void |
paintHorizontalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
Rectangle bounds,
TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
繪製支路 (leg) 的水平部分。 |
protected void |
paintRow(Graphics g,
Rectangle clipBounds,
Insets insets,
Rectangle bounds,
TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
繪製 row 的渲染器部分。 |
protected void |
paintVerticalLine(Graphics g,
JComponent c,
int x,
int top,
int bottom)
繪製垂直線。 |
protected void |
paintVerticalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
TreePath path)
繪製支路的垂直部分。 |
protected void |
pathWasCollapsed(TreePath path)
在折疊 VisibleTreeNode 後,從其傳遞訊息。 |
protected void |
pathWasExpanded(TreePath path)
在展開 VisibleTreeNode 後,從其傳遞訊息。 |
protected void |
prepareForUIInstall()
在設置 tree 實例變數之後,但在安裝任何預設值/偵聽器之前調用此方法。 |
protected void |
prepareForUIUninstall()
|
protected void |
selectPathForEvent(TreePath path,
MouseEvent event)
傳遞訊息以基於特定行上的 MouseEvent 更新選擇。 |
protected void |
setCellEditor(TreeCellEditor editor)
設置單元格編輯器。 |
protected void |
setCellRenderer(TreeCellRenderer tcr)
將 TreeCellRenderer 設置為 tcr 。 |
void |
setCollapsedIcon(Icon newG)
|
protected void |
setEditable(boolean newValue)
配置接收者以允許或不允許進行編輯。 |
void |
setExpandedIcon(Icon newG)
|
protected void |
setHashColor(Color color)
|
protected void |
setLargeModel(boolean largeModel)
如果必要,則更新 componentListener。 |
void |
setLeftChildIndent(int newAmount)
|
protected void |
setModel(TreeModel model)
設置 TreeModel。 |
void |
setPreferredMinSize(Dimension newSize)
設置首選最小大小。 |
void |
setRightChildIndent(int newAmount)
|
protected void |
setRootVisible(boolean newValue)
將根設置為可見。 |
protected void |
setRowHeight(int rowHeight)
設置行高度,此方法將被轉發到 treeState。 |
protected void |
setSelectionModel(TreeSelectionModel newLSM)
重置選擇模型。 |
protected void |
setShowsRootHandles(boolean newValue)
確定是否顯示節點句柄。 |
protected boolean |
shouldPaintExpandControl(TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
如果應該為指定行繪製展開(切換)控制元件,則返回 true。 |
protected boolean |
startEditing(TreePath path,
MouseEvent event)
如果存在 cellEditor 並且 shouldSelectCell 返回 true,則啟動節點的編輯操作。 |
void |
startEditingAtPath(JTree tree,
TreePath path)
選擇路徑中的最後一個項並嘗試對其進行編輯。 |
boolean |
stopEditing(JTree tree)
停止當前編輯Session。 |
protected void |
toggleExpandState(TreePath path)
如果路徑不是展開的,則展開它;如果它是展開的,則折疊它。 |
protected void |
uninstallComponents()
卸載渲染器窗格。 |
protected void |
uninstallDefaults()
|
protected void |
uninstallKeyboardActions()
|
protected void |
uninstallListeners()
|
void |
uninstallUI(JComponent c)
在 installUI 期間,在指定元件上反向執行的配置操作。 |
protected void |
updateCachedPreferredSize()
更新 preferredSize 實例變數,該變數從 getPreferredSize() 返回。 |
protected void |
updateCellEditor()
基於包含所在的 JTree 的可編輯性更新 cellEditor。 |
protected void |
updateDepthOffset()
更新每次應該偏移的深度量。 |
protected void |
updateExpandedDescendants(TreePath path)
通過從階層樹獲取展開的子代並將其轉發到階層樹狀態來更新 path 的所有子代的展開狀態。 |
protected void |
updateLayoutCacheExpandedNodes()
讓在 JTree 中展開的所有節點在 LayoutCache 中展開。 |
protected void |
updateRenderer()
當渲染器更改時從所處的階層樹中傳遞訊息。 |
protected void |
updateSize()
將快取記憶體大小標記為無效並使用 treeDidChange 傳遞階層樹的資訊。 |
從類別 javax.swing.plaf.ComponentUI 繼承的方法 |
---|
contains, getAccessibleChild, getAccessibleChildrenCount, update |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
欄位詳細資訊 |
---|
protected transient Icon collapsedIcon
protected transient Icon expandedIcon
protected int leftChildIndent
protected int rightChildIndent
protected int totalChildIndent
protected Dimension preferredMinSize
protected int lastSelectedRow
protected JTree tree
protected transient TreeCellRenderer currentCellRenderer
protected boolean createdRenderer
protected transient TreeCellEditor cellEditor
protected boolean createdCellEditor
protected boolean stopEditingInCompleteEditing
protected CellRendererPane rendererPane
protected Dimension preferredSize
protected boolean validCachedPreferredSize
protected AbstractLayoutCache treeState
protected Hashtable<TreePath,Boolean> drawingCache
protected boolean largeModel
protected AbstractLayoutCache.NodeDimensions nodeDimensions
protected TreeModel treeModel
protected TreeSelectionModel treeSelectionModel
protected int depthOffset
protected Component editingComponent
protected TreePath editingPath
protected int editingRow
protected boolean editorHasDifferentSize
建構子詳細資訊 |
---|
public BasicTreeUI()
方法詳細資訊 |
---|
public static ComponentUI createUI(JComponent x)
protected Color getHashColor()
protected void setHashColor(Color color)
public void setLeftChildIndent(int newAmount)
public int getLeftChildIndent()
public void setRightChildIndent(int newAmount)
public int getRightChildIndent()
public void setExpandedIcon(Icon newG)
public Icon getExpandedIcon()
public void setCollapsedIcon(Icon newG)
public Icon getCollapsedIcon()
protected void setLargeModel(boolean largeModel)
protected boolean isLargeModel()
protected void setRowHeight(int rowHeight)
protected int getRowHeight()
protected void setCellRenderer(TreeCellRenderer tcr)
tcr
。此方法調用 updateRenderer
。
protected TreeCellRenderer getCellRenderer()
protected void setModel(TreeModel model)
protected TreeModel getModel()
protected void setRootVisible(boolean newValue)
protected boolean isRootVisible()
protected void setShowsRootHandles(boolean newValue)
protected boolean getShowsRootHandles()
protected void setCellEditor(TreeCellEditor editor)
protected TreeCellEditor getCellEditor()
protected void setEditable(boolean newValue)
protected boolean isEditable()
protected void setSelectionModel(TreeSelectionModel newLSM)
protected TreeSelectionModel getSelectionModel()
public Rectangle getPathBounds(JTree tree, TreePath path)
TreeUI
中的 getPathBounds
public TreePath getPathForRow(JTree tree, int row)
TreeUI
中的 getPathForRow
public int getRowForPath(JTree tree, TreePath path)
TreeUI
中的 getRowForPath
public int getRowCount(JTree tree)
TreeUI
中的 getRowCount
public TreePath getClosestPathForLocation(JTree tree, int x, int y)
TreeUI
中的 getClosestPathForLocation
public boolean isEditing(JTree tree)
TreeUI
中的 isEditing
public boolean stopEditing(JTree tree)
TreeUI
中的 stopEditing
public void cancelEditing(JTree tree)
TreeUI
中的 cancelEditing
public void startEditingAtPath(JTree tree, TreePath path)
TreeUI
中的 startEditingAtPath
public TreePath getEditingPath(JTree tree)
TreeUI
中的 getEditingPath
public void installUI(JComponent c)
ComponentUI
複製的描述ComponentUI
實例將作為 UI 委託安裝在指定元件上時,可調用此方法。此方法應該為外觀完整地配置元件,包括以下方面:
LayoutManager
。
PropertyChangeListener
。
ComponentUI
中的 installUI
c
- 將安裝此 UI 委託的元件ComponentUI.uninstallUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
protected void prepareForUIInstall()
tree
實例變數之後,但在安裝任何預設值/偵聽器之前調用此方法。
protected void completeUIInstall()
protected void installDefaults()
protected void installListeners()
protected void installKeyboardActions()
protected void installComponents()
protected AbstractLayoutCache.NodeDimensions createNodeDimensions()
protected PropertyChangeListener createPropertyChangeListener()
protected MouseListener createMouseListener()
protected FocusListener createFocusListener()
protected KeyListener createKeyListener()
protected PropertyChangeListener createSelectionModelPropertyChangeListener()
protected TreeSelectionListener createTreeSelectionListener()
protected CellEditorListener createCellEditorListener()
protected ComponentListener createComponentListener()
protected TreeExpansionListener createTreeExpansionListener()
protected AbstractLayoutCache createLayoutCache()
protected CellRendererPane createCellRendererPane()
protected TreeCellEditor createDefaultCellEditor()
protected TreeCellRenderer createDefaultCellRenderer()
protected TreeModelListener createTreeModelListener()
public void uninstallUI(JComponent c)
ComponentUI
複製的描述installUI
期間,在指定元件上反向執行的配置操作。當此 UIComponent
實例將作為 UI 委託從指定元件上移除時,可調用此方法。此方法應該取消在 installUI
中執行的配置操作,非常小心地使 JComponent
實例處於某種潔淨狀態(沒有額外的偵聽器、沒有特定於外觀的屬性物件等等)。配置內容應該套件括以下方面:
ComponentUI
中的 uninstallUI
c
- 從中移除此 UI 委託的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數ComponentUI.installUI(javax.swing.JComponent)
,
JComponent.updateUI()
protected void prepareForUIUninstall()
protected void completeUIUninstall()
protected void uninstallDefaults()
protected void uninstallListeners()
protected void uninstallKeyboardActions()
protected void uninstallComponents()
public int getBaseline(JComponent c, int width, int height)
ComponentUI
中的 getBaseline
c
- 為其請求基線的 JComponent
width
- 為其獲取基線的寬度height
- 為其獲取基線的高度
NullPointerException
- 如果 c
為 null
IllegalArgumentException
- 如果寬度或高度 < 0JComponent.getBaseline(int, int)
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
ComponentUI
中的 getBaselineResizeBehavior
c
- 為其返回調整大小行為的 JComponent
NullPointerException
- 如果 c
為 null
JComponent.getBaseline(int, int)
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)
protected void paintHorizontalPartOfLeg(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf)
clipBounds
或 insets
。
註:如果階層樹不可見,則 parentRow
為 -1。
protected void paintVerticalPartOfLeg(Graphics g, Rectangle clipBounds, Insets insets, TreePath path)
clipBounds
、insets
。
protected void paintExpandControl(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf)
clipBounds
或 insets
。
protected void paintRow(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds, TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf)
clipBounds
或 insets
。
protected boolean shouldPaintExpandControl(TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf)
protected void paintVerticalLine(Graphics g, JComponent c, int x, int top, int bottom)
protected void paintHorizontalLine(Graphics g, JComponent c, int y, int left, int right)
protected int getVerticalLegBuffer()
protected int getHorizontalLegBuffer()
protected void drawCentered(Component c, Graphics graphics, Icon icon, int x, int y)
protected void drawDashedHorizontalLine(Graphics g, int y, int x1, int x2)
protected void drawDashedVerticalLine(Graphics g, int x, int y1, int y2)
protected int getRowX(int row, int depth)
row
- 返回 x 位置的行depth
- 行的深度
protected void updateLayoutCacheExpandedNodes()
protected void updateExpandedDescendants(TreePath path)
path
的所有子代的展開狀態。
protected TreePath getLastChildPath(TreePath parent)
parent
的最後一個子節點的路徑。
protected void updateDepthOffset()
protected void updateCellEditor()
protected void updateRenderer()
protected void configureLayoutCache()
protected void updateSize()
treeDidChange
傳遞階層樹的資訊。
protected void updateCachedPreferredSize()
preferredSize
實例變數,該變數從 getPreferredSize()
返回。對於從左到右方向,大小是根據當前的 AbstractLayoutCache 確定的。對於 RTL 方向,首選大小為寬度減去最小 x 位置。
protected void pathWasExpanded(TreePath path)
protected void pathWasCollapsed(TreePath path)
protected void ensureRowsAreVisible(int beginRow, int endRow)
public void setPreferredMinSize(Dimension newSize)
public Dimension getPreferredMinSize()
public Dimension getPreferredSize(JComponent c)
ComponentUI
中的 getPreferredSize
c
- 將查詢其首選大小的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數JComponent.getPreferredSize()
,
LayoutManager.preferredLayoutSize(java.awt.Container)
public Dimension getPreferredSize(JComponent c, boolean checkConsistancy)
public Dimension getMinimumSize(JComponent c)
ComponentUI
中的 getMinimumSize
c
- 將查詢其最小大小的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數
Dimension
物件或 null
JComponent.getMinimumSize()
,
LayoutManager.minimumLayoutSize(java.awt.Container)
,
ComponentUI.getPreferredSize(javax.swing.JComponent)
public Dimension getMaximumSize(JComponent c)
ComponentUI
中的 getMaximumSize
c
- 將查詢其最大大小的元件;此參數常被忽略,但如果 UI 物件是無狀態的並由多個元件共享,則可以使用該參數
Dimension
物件或 null
JComponent.getMaximumSize()
,
LayoutManager2.maximumLayoutSize(java.awt.Container)
protected void completeEditing()
getInvokesStopCellEditing
返回 true,則在當前編輯器上調用 stopCellEditing。然後對 completeEditing 傳遞 false 或 true 訊息,false 表示取消所有遺留的編輯。
protected void completeEditing(boolean messageStop, boolean messageCancel, boolean messageTree)
protected boolean startEditing(TreePath path, MouseEvent event)
此方法假定路徑有效且可見。
protected void checkForClickInExpandControl(TreePath path, int mouseX, int mouseY)
mouseX
和 mouseY
位於 row
的展開/折疊區域內,則此方法將切換行。
protected boolean isLocationInExpandControl(TreePath path, int mouseX, int mouseY)
mouseX
和 mouseY
落在用於展開/折疊節點的行的區域內,並且 row
的節點不表示葉節點,則返回 true。
protected void handleExpandControlClick(TreePath path, int mouseX, int mouseY)
protected void toggleExpandState(TreePath path)
protected boolean isToggleSelectionEvent(MouseEvent event)
protected boolean isMultiSelectEvent(MouseEvent event)
protected boolean isToggleEvent(MouseEvent event)
protected void selectPathForEvent(TreePath path, MouseEvent event)
protected boolean isLeaf(int row)
row
的節點是葉節點,則返回 true。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。