Класс Box
- 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 может создавать несколько типов невидимых компонентов, влияющих на компоновку: glue, struts и жёсткие области. Если все компоненты, содержащиеся в вашем контейнере Box, имеют фиксированный размер, вы можете использовать компонент glue (возвращаемый методом createGlue) для управления расположением компонентов. Если вам нужен фиксированный отступ между двумя компонентами, воспользуйтесь struts (createHorizontalStrut или createVerticalStrut). Если вам нужен невидимый компонент, занимающий всегда одинаковый размер, вызовите createRigidArea.
Если вы реализуете BoxLayout, дополнительную информацию и примеры можно найти в Руководстве по использованию BoxLayout в Java Tutorial.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка длительного хранения всех JavaBeans™ была добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.
- С:
- 1.2
- См. также:
-
BoxLayout, Сериализованная форма
Вложенные классы
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class | Box.AccessibleBox | Этот класс реализует поддержку доступности для класса |
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
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW Поля, объявленные в классе java.awt.Component
accessibleContext, 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) | Создаёт |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static Component | createGlue() | Создаёт невидимый компонент "glue", который может быть полезен в Box, компоненты которого имеют максимальную ширину (для горизонтального Box) или высоту (для вертикального Box). |
static Box | createHorizontalBox() | Создаёт |
static Component | createHorizontalGlue() | Создаёт горизонтальный компонент glue. |
static Component | createHorizontalStrut(int width) | Создаёт невидимый компонент с фиксированной шириной. |
static Component | createRigidArea(Dimension d) | Создаёт невидимый компонент, всегда занимающий указанный размер. |
static Box | createVerticalBox() | Создаёт |
static Component | createVerticalGlue() | Создаёт вертикальный компонент glue. |
static Component | createVerticalStrut(int height) | Создаёт невидимый компонент с фиксированной высотой. |
AccessibleContext | getAccessibleContext() | Получает AccessibleContext, связанный с этим объектом Box. |
protected void | paintComponent(Graphics g) | Рисует этот |
void | setLayout(LayoutManager l) | Выбрасывает AWTError, так как Box может использовать только BoxLayout. |
Методы, объявленные в классе javax.swing.JComponent
addAncestorListener, 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.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, 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, 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 Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Конструкторы
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, который учитывает ориентацию компонентов, вы должны создать Box с помощью конструктора и передать в него BoxLayout.LINE_AXIS, например:
Box lineBox = new Box(BoxLayout.LINE_AXIS);
- Возвращает:
- ящик
createVerticalBox
public static Box createVerticalBox()
Создаёт Box, который отображает свои компоненты сверху вниз. Если вам нужен Box, который учитывает ориентацию компонентов, вы должны создать Box с помощью конструктора и передать в него BoxLayout.PAGE_AXIS, например:
Box lineBox = new Box(BoxLayout.PAGE_AXIS);
- Возвращает:
- ящик
createRigidArea
public static Component createRigidArea(Dimension d)
Создаёт невидимый компонент, размер которого всегда задан.
- Параметры:
-
d- размеры невидимого компонента - Возвращает:
- компонент
- См. также:
-
createGlue(),createHorizontalStrut(int),createVerticalStrut(int)
createHorizontalStrut
public static Component createHorizontalStrut(int width)
Создаёт невидимый компонент фиксированной ширины. В горизонтальном ящике этот метод обычно используется для создания определённого промежутка между двумя компонентами. В вертикальном ящике этот метод может использоваться для принудительного задания минимальной ширины ящика. Невидимый компонент не имеет высоты, если свободное место не доступно, в противном случае он занимает свою долю доступного пространства, как и любой другой компонент без максимальной высоты.
- Параметры:
-
width- ширина невидимого компонента в пикселях ≥ 0 - Возвращает:
- компонент
- См. также:
-
createVerticalStrut(int),createGlue(),createRigidArea(java.awt.Dimension)
createVerticalStrut
public static Component createVerticalStrut(int height)
Создаёт невидимый компонент фиксированной высоты. В вертикальном ящике этот метод обычно используется для создания определённого промежутка между двумя компонентами. В горизонтальном ящике этот метод может использоваться для принудительного задания минимальной высоты ящика. Невидимый компонент не имеет ширины, если свободное место не доступно, в противном случае он занимает свою долю доступного пространства, как и любой другой компонент без максимальной ширины.
- Параметры:
-
height- высота невидимого компонента в пикселях ≥ 0 - Возвращает:
- компонент
- См. также:
-
createHorizontalStrut(int),createGlue(),createRigidArea(java.awt.Dimension)
createGlue
public static Component createGlue()
Создаёт невидимый компонент «липкость», который может быть полезен в ящике, у которого видимые компоненты имеют максимальную ширину (для горизонтального ящика) или высоту (для вертикального ящика). Вы можете представить компонент липкости как вязкое вещество, которое расширяется, чтобы заполнить пространство между соседними компонентами.
Например, предположим, что у вас есть горизонтальный ящик, содержащий два компонента фиксированного размера. Если ящик получает дополнительное пространство, компоненты фиксированного размера не увеличатся, так куда же пойдёт дополнительное пространство? Без липкости дополнительное пространство пойдёт вправо от второго компонента. Если вы поместите липкость между компонентами фиксированного размера, дополнительное пространство займёт это место. Если вы поместите липкость перед первым компонентом фиксированного размера, дополнительное пространство пойдёт туда, а компоненты фиксированного размера будут прижаты к правому краю ящика. Если вы поместите липкость перед первым компонентом фиксированного размера и после второго компонента фиксированного размера, компоненты фиксированного размера будут центрированы в ящике.
Для использования липкости вызовите Box.createGlue и добавьте возвращаемый компонент в контейнер. Компонент липкости не имеет минимального или предпочтительного размера, поэтому он не занимает места, если свободного места нет. Если свободное место есть, компонент липкости занимает свою долю доступного горизонтального или вертикального пространства, как и любой другой компонент без максимальной ширины или высоты.
- Возвращает:
- компонент
createHorizontalGlue
public static Component createHorizontalGlue()
Создаёт горизонтальный компонент липкости.
- Возвращает:
- компонент
createVerticalGlue
public static Component createVerticalGlue()
Создаёт вертикальный компонент липкости.
- Возвращает:
- компонент
setLayout
public void setLayout(LayoutManager l)
Выбрасывает AWTError, так как ящик может использовать только BoxLayout.
- Переопределяет:
-
setLayoutв классеContainer - Параметры:
-
l- менеджер компоновки для использования - См. также:
-
Container.doLayout(),Container.getLayout(),Container.invalidate()
paintComponent
protected void paintComponent(Graphics g)
Отрисовывает этот Box. Если у этого Box есть UI, этот метод вызывает реализацию родительского класса, в противном случае, если этот Box непрозрачен, Graphics заполняется фоном.
- Переопределяет:
-
paintComponentв классеJComponent - Параметры:
-
g-Graphicsдля отрисовки - Исключения:
-
NullPointerException- еслиgравен null - С момента:
- 1.6
- См. также:
-
JComponent.paint(java.awt.Graphics),ComponentUI
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим Box. Для ящиков AccessibleContext имеет вид AccessibleBox. Новый AccessibleAWTBox создаётся при необходимости.
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- AccessibleBox, который служит AccessibleContext для этого Box
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/Box.html