|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.Box
public class Box
使用 BoxLayout 物件作為其佈局管理器的一個輕量級容器。Box 提供幾個對使用 BoxLayout 的容器(甚至非 Box 容器)有用的類別方法。
Box 類別可以創建幾種影響佈局的不可見元件:glue、struts 和 rigid 區域。如果 Box 套件含的所有元件都有一個固定大小,可以使用 glue 元件(由 createGlue 返回)來控制元件的位置。如果想讓兩個元件之間有一個固定的空間量,可以嘗試使用 strut(createHorizontalStrut 或 createVerticalStrut)。如果需要一個總是佔用相同空間量的不可見元件,可以通過調用 createRigidArea 獲得。
如果要實作一個 BoxLayout,可以在 The Java Tutorial 的 How to Use BoxLayout 一節中獲得更多資訊和範例。
警告:此類別的已序列化物件與以後的 Swing 版本不相容。當前序列化支持適用於短期存儲,或適用於在運行相同 Swing 版本的應用程序之間進行 RMI(Remote Method Invocation,遠端方法調用)。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder。
BoxLayout| 巢狀類別摘要 | |
|---|---|
protected class |
Box.AccessibleBox
此類別實作 Box 類別的可存取性支持。 |
static class |
Box.Filler
參與佈局但沒有視圖的輕量級元件的實作。 |
| 從類別 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 |
| 從介面 java.awt.image.ImageObserver 繼承的欄位 |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| 建構子摘要 | |
|---|---|
Box(int axis)
創建一個沿指定坐標軸顯示其元件的 Box。 |
|
| 方法摘要 | |
|---|---|
static Component |
createGlue()
創建一個不可見的 "glue" 元件,其可見元件有一個最大寬度(對於橫向 box)或高度(對於縱向 box)的 Box,該元件可能很有用。 |
static Box |
createHorizontalBox()
創建一個從左到右顯示其元件的 Box。 |
static Component |
createHorizontalGlue()
創建一個橫向 glue 元件。 |
static Component |
createHorizontalStrut(int width)
創建一個不可見的、固定寬度的元件。 |
static Component |
createRigidArea(Dimension d)
創建一個總是具有指定大小的不可見元件。 |
static Box |
createVerticalBox()
創建一個從上到下顯示其元件的 Box。 |
static Component |
createVerticalGlue()
創建一個縱向 glue 元件。 |
static Component |
createVerticalStrut(int height)
創建一個不可見的、固定高度的元件。 |
AccessibleContext |
getAccessibleContext()
獲取與此 Box 相關聯的 AccessibleContext。 |
protected void |
paintComponent(Graphics g)
繪製此 Box。 |
void |
setLayout(LayoutManager l)
拋出一個 AWTError,因為 Box 只能使用 BoxLayout。 |
| 從類別 java.lang.Object 繼承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| 建構子詳細資訊 |
|---|
public Box(int axis)
Box。
axis - 可以是 BoxLayout.X_AXIS、BoxLayout.Y_AXIS、BoxLayout.LINE_AXIS 或 BoxLayout.PAGE_AXIS。
AWTError - 如果 axis 無效createHorizontalBox(),
createVerticalBox()| 方法詳細資訊 |
|---|
public static Box createHorizontalBox()
Box。如果想創建一個遵守該元件方向的 Box,則應使用建構子並傳入 BoxLayout.LINE_AXIS 來創建 Box,例如:
Box lineBox = new Box(BoxLayout.LINE_AXIS);
public static Box createVerticalBox()
Box。如果想創建一個遵守該元件方向的 Box,則應使用建構子並傳入 BoxLayout.PAGE_AXIS 來創建 Box,例如:
Box lineBox = new Box(BoxLayout.PAGE_AXIS);
public static Component createRigidArea(Dimension d)
d - 不可見元件的尺寸
createGlue(),
createHorizontalStrut(int),
createVerticalStrut(int)public static Component createHorizontalStrut(int width)
width - 不可見元件的寬度,以像素為單位,該寬度 >= 0
createVerticalStrut(int),
createGlue(),
createRigidArea(java.awt.Dimension)public static Component createVerticalStrut(int height)
height - 不可見元件的高度,以像素為單位,該高度 >= 0
createHorizontalStrut(int),
createGlue(),
createRigidArea(java.awt.Dimension)public static Component createGlue()
例如,假定有一個套件含兩個固定大小元件的橫向 box。如果 box 獲得額外的空間,而這兩個固定大小的元件不會變得更大,那麼額外的空間放到哪去呢?在沒有 glue 的情況下,額外的空間將放到第二個元件的右邊。如果將 glue 放在兩個固定大小元件之間,則額外的空間將放到那裡。如果將 glue 放在第一個固定大小元件的前面,則額外的空間將放到那裡,兩個固定大小的元件將被擠到 box 的右邊緣。如果將 glue 放在第一個固定大小元件之前,第二個固定大小元件之後,則這兩個固定大小元件將被擠到 box 的中心。
要使用 glue,請調用 Box.createGlue,並將返回的元件添加到容器中。glue 元件沒有最小大小或首選大小,因此只有剩餘的空間可用時,它才佔用空間。如果剩餘的空間可用,那麼就像其他任何沒有最大寬度或高度的元件一樣,glue 元件將佔用其可用的共享橫向或縱向空間。
public static Component createHorizontalGlue()
public static Component createVerticalGlue()
public void setLayout(LayoutManager l)
Container 中的 setLayoutl - 要使用的佈局管理器Container.doLayout(),
Container.getLayout()protected void paintComponent(Graphics g)
Box。如果此 Box 具有一個 UI,則此方法調用 super 的實作,否則,如果此 Box 是不透明的,則使用背景填充 Graphics。
JComponent 中的 paintComponentg - 要繪製的 Graphics
NullPointerException - 如果 g 為 nullJComponent.paint(java.awt.Graphics),
ComponentUIpublic AccessibleContext getAccessibleContext()
Accessible 中的 getAccessibleContextJComponent 中的 getAccessibleContext
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
| 上一個類別 下一個類別 | 框架 無框架 | |||||||||
| 摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 | |||||||||
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。