- java.lang.Object
-  
      - java.awt.Component
-  
        - java.awt.Container
-  
          - javax.swing.JComponent
-  
            - javax.swing.Box
 
 
 
 
-  
       - 实现的所有接口
-  
         ImageObserver,MenuContainer,Serializable,Accessible
 
 @JavaBean(defaultProperty="accessibleContext") public class Box extends JComponent implements Accessible 一个轻量级容器,它使用BoxLayout对象作为其布局管理器。 Box提供了几种类方法,这些方法对于使用BoxLayout的容器非常有用 - 甚至是非Box容器。Box类可以创建几种影响布局的不可见组件:胶水,支柱和刚性区域。 如果Box包含的所有组件都具有固定大小,则可能需要使用粘合组件(由createGlue返回)来控制组件的位置。 如果两个组件之间需要固定的空间,请尝试使用支柱(createHorizontalStrut或createVerticalStrut)。 如果您需要一个总是占用相同空间量的不可见组件,请通过调用createRigidArea获取它。如果要实现一个 BoxLayout,您可以找到进一步的信息和例子How to Use BoxLayout ,在Java教程的部分。警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始, java.beans软件包中添加了对所有JavaBeansjava.beans长期存储的支持。 请参阅XMLEncoder。- 从以下版本开始:
- 1.2
- 另请参见:
-  
         BoxLayout, Serialized Form
 
-  
        
       -  
             嵌套类汇总嵌套类 变量和类型 类 描述 protected classBox.AccessibleBox此类实现Box类的可访问性支持。static classBox.Filler轻量级组件的实现,它参与布局但没有视图。-  
               嵌套类/接口声明在类 javax.swing.JComponentJComponent.AccessibleJComponent
 -  
               嵌套类/接口声明在类 java.awt.ContainerContainer.AccessibleAWTContainer
 
-  
               
 -  
             字段汇总-  
               声明的属性在类 javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 -  
               声明的属性在类 java.awt.ComponentaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 -  
               Fields declared in interface java.awt.image.ImageObserverABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
-  
               
 -  
             构造方法摘要构造方法 构造器 描述 Box(int axis)创建一个Box,沿指定轴显示其组件。
 -  
             方法摘要所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 static ComponentcreateGlue()创建一个不可见的“胶水”组件,该组件在Box中可用,其可见组件具有最大宽度(对于水平框)或高度(对于垂直框)。static BoxcreateHorizontalBox()创建一个Box显示其组件的Box。static ComponentcreateHorizontalGlue()创建水平胶组件。static ComponentcreateHorizontalStrut(int width)创建一个不可见的固定宽度组件。static ComponentcreateRigidArea(Dimension d)创建一个始终为指定大小的不可见组件。static BoxcreateVerticalBox()创建一个Box显示其组件的Box。static ComponentcreateVerticalGlue()创建垂直胶水组件。static ComponentcreateVerticalStrut(int height)创建一个不可见的固定高度组件。AccessibleContextgetAccessibleContext()获取与此Box关联的AccessibleContext。protected voidpaintComponent(Graphics g)这个Box。voidsetLayout(LayoutManager l)抛出AWTError,因为Box只能使用BoxLayout。-  
               声明方法的类 javax.swing.JComponentaddAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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.Containeradd, 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, transferFocusDownCycle, validate, validateTree
 -  
               声明方法的类 java.awt.Componentaction, 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, 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, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
-  
               
 
-  
             
-  
        
       -  
             构造方法详细信息-  Boxpublic Box(int axis) 创建一个Box,沿指定轴显示其组件。- 参数
-  
              axis-可能是BoxLayout.X_AXIS,BoxLayout.Y_AXIS,BoxLayout.LINE_AXIS或BoxLayout.PAGE_AXIS。
- 异常
-  
              AWTError- 如果axis无效
- 另请参见:
-  
              createHorizontalBox(),createVerticalBox()
 
 
-  
 -  
             方法详细信息-  createHorizontalBoxpublic static Box createHorizontalBox() 创建一个Box显示其组件的Box。 如果你想要一个尊重组件方向的Box,你应该使用构造函数创建Box并传入BoxLayout.LINE_AXIS,例如:Box lineBox = new Box(BoxLayout.LINE_AXIS);- 结果
- 盒子
 
 -  createVerticalBoxpublic static Box createVerticalBox() 创建一个Box显示其组件的Box。 如果你想要一个尊重组件方向的Box,你应该使用构造函数创建Box并传入BoxLayout.PAGE_AXIS,例如:Box lineBox = new Box(BoxLayout.PAGE_AXIS);- 结果
- 盒子
 
 -  createRigidAreapublic static Component createRigidArea(Dimension d) 创建一个始终为指定大小的不可见组件。- 参数
-  
              d- 不可见组件的尺寸
- 结果
- 组件
- 另请参见:
-  
              createGlue(),createHorizontalStrut(int),createVerticalStrut(int)
 
 -  createHorizontalStrutpublic static Component createHorizontalStrut(int width) 创建一个不可见的固定宽度组件。 在水平框中,通常使用此方法在两个组件之间强制使用一定量的空间。 在垂直框中,您可以使用此方法强制框至少为指定的宽度。 除非有多余的空间,否则隐形组件没有高度,在这种情况下,它占用可用空间的份额,就像任何其他没有最大高度的组件一样。- 参数
-  
              width- 不可见组件的宽度,以像素为单位> = 0
- 结果
- 组件
- 另请参见:
-  
              createVerticalStrut(int),createGlue(),createRigidArea(java.awt.Dimension)
 
 -  createVerticalStrutpublic static Component createVerticalStrut(int height) 创建一个不可见的固定高度组件。 在垂直框中,通常使用此方法在两个组件之间强制使用一定量的空间。 在水平框中,您可以使用此方法强制该框至少为指定的高度。 除非有多余的空间,否则不可见组件没有宽度,在这种情况下,它占用可用空间的份额,就像任何其他没有最大宽度的组件一样。- 参数
-  
              height- 不可见组件的高度,以像素为单位> = 0
- 结果
- 组件
- 另请参见:
-  
              createHorizontalStrut(int),createGlue(),createRigidArea(java.awt.Dimension)
 
 -  createGluepublic static Component createGlue() 创建一个不可见的“胶水”组件,该组件在Box中可用,其可见组件具有最大宽度(对于水平框)或高度(对于垂直框)。 您可以将胶水成分视为一种粘性物质,可以根据需要进行扩展,以填充其相邻组件之间的空间。例如,假设您有一个包含两个固定大小组件的水平框。 如果盒子有额外的空间,固定大小的组件不会变大,那么多余的空间去哪儿了? 没有胶水,额外的空间会到达第二个组件的右侧。 如果你在固定尺寸的组件之间放胶水,那么额外的空间就在那里。 如果您在第一个固定尺寸组件之前放置胶水,则会有额外的空间,并且固定尺寸的组件会被推到盒子的右边缘。 如果在第一个固定尺寸组件之前和第二个固定尺寸组件之后放置胶水,则固定尺寸组件将在框中居中。 要使用胶水,请致电 Box.createGlue并将返回的组件添加到容器中。 胶水组件没有最小尺寸或优选尺寸,因此除非有足够的空间,否则它不会占用空间。 如果有足够的空间,那么胶水组件将占用可用的水平或垂直空间,就像任何其他没有最大宽度或高度的组件一样。- 结果
- 组件
 
 -  createHorizontalGluepublic static Component createHorizontalGlue() 创建水平胶组件。- 结果
- 组件
 
 -  createVerticalGluepublic static Component createVerticalGlue() 创建垂直胶水组件。- 结果
- 组件
 
 -  setLayoutpublic void setLayout(LayoutManager l) 抛出AWTError,因为Box只能使用BoxLayout。- 重写:
-  
              setLayout在课程Container
- 参数
-  
              l- 要使用的布局管理器
- 另请参见:
-  
              Container.doLayout(),Container.getLayout(),Container.invalidate()
 
 -  paintComponentprotected void paintComponent(Graphics g) 这个Box。 如果此Box具有UI,则此方法调用super的实现,否则如果此Box是不透明的,则使用背景填充Graphics。- 重写:
-  
              paintComponent在类JComponent
- 参数
-  
              g- 绘制到Graphics
- 异常
-  
              NullPointerException- 如果g为空
- 从以下版本开始:
- 1.6
- 另请参见:
-  
              JComponent.paint(java.awt.Graphics),ComponentUI
 
 -  getAccessibleContext@BeanProperty(bound=false) public AccessibleContext getAccessibleContext() 获取与此Box关联的AccessibleContext。 对于框,AccessibleContext采用AccessibleBox的形式。 如有必要,将创建一个新的AccessibleAWTBox实例。- Specified by:
-  
              getAccessibleContext在界面Accessible
- 重写:
-  
              getAccessibleContext,类Component
- 结果
- 一个AccessibleBox,用作此Box的AccessibleContext
 
 
-  
 
-