当前页面:
在线文档首页 >
JavaTM 2 Platform Standard Edition 6.0 API 规范中文版
Box (Java Platform SE 6) - JavaTM 2 Platform Standard Edition 6.0 API 规范中文版
javax.swing
类 Box
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.Box
- 所有已实现的接口:
- ImageObserver, MenuContainer, Serializable, Accessible
public class Box
- extends JComponent
- implements Accessible
使用 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
构造方法摘要 |
Box(int axis)
创建一个沿指定坐标轴显示其组件的 Box 。 |
从类 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, 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, updateUI |
从类 java.awt.Container 继承的方法 |
add, add, add, add, add, addContainerListener, addImpl, 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 |
Box
public Box(int axis)
- 创建一个沿指定坐标轴显示其组件的
Box
。
- 参数:
axis
- 可以是 BoxLayout.X_AXIS
、BoxLayout.Y_AXIS
、BoxLayout.LINE_AXIS
或 BoxLayout.PAGE_AXIS
。
- 抛出:
AWTError
- 如果 axis
无效- 另请参见:
createHorizontalBox()
,
createVerticalBox()
createHorizontalBox
public static Box createHorizontalBox()
- 创建一个从左到右显示其组件的
Box
。如果想创建一个遵守该组件方向的 Box
,则应使用构造方法并传入 BoxLayout.LINE_AXIS
来创建 Box
,例如:
Box lineBox = new Box(BoxLayout.LINE_AXIS);
- 返回:
- box
createVerticalBox
public static Box createVerticalBox()
- 创建一个从上到下显示其组件的
Box
。如果想创建一个遵守该组件方向的 Box
,则应使用构造方法并传入 BoxLayout.PAGE_AXIS
来创建 Box
,例如:
Box lineBox = new Box(BoxLayout.PAGE_AXIS);
- 返回:
- box
createRigidArea
public static Component createRigidArea(Dimension d)
- 创建一个总是具有指定大小的不可见组件。
- 参数:
d
- 不可见组件的尺寸
- 返回:
- 该组件
- 另请参见:
createGlue()
,
createHorizontalStrut(int)
,
createVerticalStrut(int)
createHorizontalStrut
public static Component createHorizontalStrut(int width)
- 创建一个不可见的、固定宽度的组件。在一个横向 box 中,通常使用此方法强行使两个组件之间具有某一空间量。在一个纵向 box 中,可以使用此方法强行使 box 至少具有指定宽度。只有存在可用的剩余空间时,不可见组件才有高度,在这种情况下,就像其他任何没有最大高度的组件一样,它将采用其可用的共享空间。
- 参数:
width
- 不可见组件的宽度,以像素为单位,该宽度 >= 0
- 返回:
- 该组件
- 另请参见:
createVerticalStrut(int)
,
createGlue()
,
createRigidArea(java.awt.Dimension)
createVerticalStrut
public static Component createVerticalStrut(int height)
- 创建一个不可见的、固定高度的组件。在一个纵向 box 中,通常使用此方法强行使两个组件之间具有某一空间量。在一个横向 box 中,可以使用此方法强行使 box 至少具有指定高度。只有具有可用的剩余空间时,不可见组件才有宽度,在这种情况下,就像其他任何没有最大宽度的组件一样,它将采用其可用的共享空间。
- 参数:
height
- 不可见组件的高度,以像素为单位,该高度 >= 0
- 返回:
- 该组件
- 另请参见:
createHorizontalStrut(int)
,
createGlue()
,
createRigidArea(java.awt.Dimension)
createGlue
public static Component createGlue()
- 创建一个不可见的 "glue" 组件,其可见组件有一个最大宽度(对于横向 box)或高度(对于纵向 box)的 Box,该组件可能很有用。可将该 glue 组件视为一种粘性物质,它尽其所需地进行扩展,以填充与其相邻组件间的空间。
例如,假定有一个包含两个固定大小组件的横向 box。如果 box 获得额外的空间,而这两个固定大小的组件不会变得更大,那么额外的空间放到哪去呢?在没有 glue 的情况下,额外的空间将放到第二个组件的右边。如果将 glue 放在两个固定大小组件之间,则额外的空间将放到那里。如果将 glue 放在第一个固定大小组件的前面,则额外的空间将放到那里,两个固定大小的组件将被挤到 box 的右边缘。如果将 glue 放在第一个固定大小组件之前,第二个固定大小组件之后,则这两个固定大小组件将被挤到 box 的中心。
要使用 glue,请调用 Box.createGlue
,并将返回的组件添加到容器中。glue 组件没有最小大小或首选大小,因此只有剩余的空间可用时,它才占用空间。如果剩余的空间可用,那么就像其他任何没有最大宽度或高度的组件一样,glue 组件将占用其可用的共享横向或纵向空间。
- 返回:
- 组件
createHorizontalGlue
public static Component createHorizontalGlue()
- 创建一个横向 glue 组件。
- 返回:
- 组件
createVerticalGlue
public static Component createVerticalGlue()
- 创建一个纵向 glue 组件。
- 返回:
- 组件
setLayout
public void setLayout(LayoutManager l)
- 抛出一个 AWTError,因为 Box 只能使用 BoxLayout。
- 覆盖:
- 类
Container
中的 setLayout
- 参数:
l
- 要使用的布局管理器- 另请参见:
Container.doLayout()
,
Container.getLayout()
paintComponent
protected void paintComponent(Graphics g)
- 绘制此
Box
。如果此 Box
具有一个 UI,则此方法调用 super 的实现,否则,如果此 Box
是不透明的,则使用背景填充 Graphics
。
- 覆盖:
- 类
JComponent
中的 paintComponent
- 参数:
g
- 要绘制的 Graphics
- 抛出:
NullPointerException
- 如果 g
为 null- 从以下版本开始:
- 1.6
- 另请参见:
JComponent.paint(java.awt.Graphics)
,
ComponentUI
getAccessibleContext
public AccessibleContext getAccessibleContext()
- 获取与此 Box 相关联的 AccessibleContext。对于 box 来说,AccessibleContext 采用 AccessibleAWTDialog 的形式。如有必要,可创建一个新的 AccessibleAWTBox 实例。
- 指定者:
- 接口
Accessible
中的 getAccessibleContext
- 覆盖:
- 类
JComponent
中的 getAccessibleContext
- 返回:
- 一个 AccessibleBox,它充当此 Box 的 AccessibleContext。
提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。 版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。