Класс Container
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable
- Прямые известные подклассы:
-
BasicSplitPaneDivider,CellRendererPane,DefaultTreeCellEditor.EditorContainer,JComponent,Panel,ScrollPane,Window
public class Container extends Component
Компоненты, добавленные в контейнер, отслеживаются в списке. Порядок списка определяет порядок стекирования компонентов контейнера — спереди назад. Если при добавлении компонента в контейнер индекс не указан, он добавляется в конец списка (и, следовательно, в нижнюю часть порядка стекирования).
Примечание: Подробную информацию о системе фокусировки см. в Руководстве по системе фокусировки в разделе Java Tutorial и в Спецификации фокусировки.
- С момента:
- 1.0
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
Container.AccessibleAWTContainer |
Вложенный класс контейнера, используемый для предоставления стандартной поддержки доступности. |
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
Поля, объявленные в классе 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Container() |
Создаёт новый контейнер. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Component |
add |
Добавляет указанный компонент в конец этого контейнера. |
Component |
add |
Добавляет указанный компонент в этот контейнер в заданной позиции. |
void |
add |
Добавляет указанный компонент в конец этого контейнера. |
void |
add |
Добавляет указанный компонент в этот контейнер с указанными ограничениями в указанном индексе. |
Component |
add |
Добавляет указанный компонент в этот контейнер. |
void |
addContainerListener |
Добавляет указанного слушателя контейнера для получения событий контейнера из этого контейнера. |
protected void |
addImpl |
Добавляет указанный компонент в этот контейнер в указанном индексе. |
void |
addNotify() |
Делает этот контейнер отображаемым, подключив его к ресурсу родного экрана. |
void |
addPropertyChangeListener |
Добавляет PropertyChangeListener в список слушателей. |
void |
addPropertyChangeListener |
Добавляет PropertyChangeListener в список слушателей для определённого свойства. |
void |
applyComponentOrientation |
Устанавливает свойство ComponentOrientation этого контейнера и всех компонентов, содержащихся в нём. |
boolean |
areFocusTraversalKeysSet |
Возвращает, определён ли набор клавиш перехода фокуса для данной операции перехода фокуса для этого контейнера. |
int |
countComponents() |
Устарело. С версии JDK 1.1, заменено на getComponentCount(). |
void |
deliverEvent |
Устарело. С версии JDK 1.1, заменено на dispatchEvent(AWTEvent e)
|
void |
doLayout() |
Вызывает размещение компонентов в этом контейнере. |
Component |
findComponentAt |
Находит видимый дочерний компонент, содержащий указанную позицию. |
Component |
findComponentAt |
Находит видимый дочерний компонент, содержащий указанную точку. |
float |
getAlignmentX() |
Возвращает выравнивание по оси x. |
float |
getAlignmentY() |
Возвращает выравнивание по оси y. |
Component |
getComponent |
Получает n-й компонент в этом контейнере. |
Component |
getComponentAt |
Находит компонент, содержащий позицию x,y. |
Component |
getComponentAt |
Получает компонент, содержащий указанную точку. |
int |
getComponentCount() |
Получает количество компонентов в этой панели. |
Component[] |
getComponents() |
Получает все компоненты в этом контейнере. |
int |
getComponentZOrder |
Возвращает индекс z-порядка компонента внутри контейнера. |
ContainerListener[] |
getContainerListeners() |
Возвращает массив всех зарегистрированных слушателей контейнера на этом контейнере. |
Set |
getFocusTraversalKeys |
Возвращает набор клавиш перехода фокуса для данной операции перехода для этого контейнера. |
FocusTraversalPolicy |
getFocusTraversalPolicy() |
Возвращает политику перехода фокуса, которая будет управлять переходом клавиатуры по дочерним элементам этого контейнера, или null, если этот контейнер не является корнем цикла фокуса. |
Insets |
getInsets() |
Определяет отступы этого контейнера, которые указывают размер границы контейнера. |
LayoutManager |
getLayout() |
Получает менеджер компоновки для этого контейнера. |
<T extends EventListener> |
getListeners |
Возвращает массив всех объектов, в настоящее время зарегистрированных как FooListener на этом Container. |
Dimension |
getMaximumSize() |
Возвращает максимальный размер этого контейнера. |
Dimension |
getMinimumSize() |
Возвращает минимальный размер этого контейнера. |
Point |
getMousePosition |
Возвращает позицию указателя мыши в пространстве координат этого Container, если Container находится под указателем мыши, иначе возвращает null. |
Dimension |
getPreferredSize() |
Возвращает предпочтительный размер этого контейнера. |
Insets |
insets() |
Устарело. С версии JDK 1.1, заменено на getInsets(). |
void |
invalidate() |
Очищает контейнер. |
boolean |
isAncestorOf |
Проверяет, содержится ли компонент в иерархии компонентов этого контейнера. |
boolean |
isFocusCycleRoot() |
Возвращает, является ли этот контейнер корнем цикла перехода фокуса. |
boolean |
isFocusCycleRoot |
Возвращает, является ли указанный контейнер корнем цикла перехода фокуса для цикла перехода фокуса этого контейнера. |
final boolean |
isFocusTraversalPolicyProvider() |
Возвращает, предоставляет ли этот контейнер политику перехода фокуса. |
boolean |
isFocusTraversalPolicySet() |
Возвращает, была ли явно установлена политика перехода фокуса для этого контейнера. |
boolean |
isValidateRoot() |
Указывает, является ли этот контейнер корнем проверки. |
void |
layout() |
Устарело. С версии JDK 1.1, заменено на doLayout(). |
void |
list |
Выводит список этого контейнера в указанный поток вывода. |
void |
list |
Выводит список, начиная с указанного отступа, в указанный объект PrintWriter. |
Component |
locate |
Устарело. С версии JDK 1.1, заменено на getComponentAt(int, int). |
Dimension |
minimumSize() |
Устарело. С версии JDK 1.1, заменено на getMinimumSize(). |
void |
paint |
Рисует контейнер. |
void |
paintComponents |
Рисует каждый из компонентов в этом контейнере. |
protected String |
paramString() |
Возвращает строку, представляющую состояние этого Container. |
Dimension |
preferredSize() |
Устарело. С версии JDK 1.1, заменено на getPreferredSize(). |
void |
print |
Выводит контейнер. |
void |
printComponents |
Выводит каждый из компонентов в этом контейнере. |
protected void |
processContainerEvent |
Обрабатывает события контейнера, происходящие в этом контейнере, перенаправляя их любым зарегистрированным объектам ContainerListener. |
protected void |
processEvent |
Обрабатывает события в этом контейнере. |
void |
remove |
Удаляет компонент, заданный index, из этого контейнера. |
void |
remove |
Удаляет указанный компонент из этого контейнера. |
void |
removeAll() |
Удаляет все компоненты из этого контейнера. |
void |
removeContainerListener |
Удаляет указанного слушателя контейнера, чтобы он больше не получал события контейнера из этого контейнера. |
void |
removeNotify() |
Делает этот контейнер неотображаемым, удалив его подключение к ресурсу родного экрана. |
void |
setComponentZOrder |
Перемещает указанный компонент в указанный индекс z-порядка в контейнере. |
void |
setFocusCycleRoot |
Устанавливает, является ли этот контейнер корнем цикла обхода фокуса. |
void |
setFocusTraversalKeys |
Устанавливает клавиши обхода фокуса для заданной операции обхода для этого контейнера. |
void |
setFocusTraversalPolicy |
Устанавливает политику обхода фокуса, которая будет управлять обходом клавиатуры дочерних элементов этого контейнера, если этот контейнер является корнем цикла фокуса. |
final void |
setFocusTraversalPolicyProvider |
Устанавливает, будет ли этот контейнер использоваться для предоставления политики обхода фокуса. |
void |
setFont |
Устанавливает шрифт этого контейнера. |
void |
setLayout |
Устанавливает менеджер компоновки для этого контейнера. |
void |
transferFocusDownCycle() |
Переносит фокус вниз по одному циклу обхода фокуса. |
void |
update |
Обновляет контейнер. |
void |
validate() |
Проверяет этот контейнер и все его подкомпоненты. |
protected void |
validateTree() |
Рекурсивно спускается по дереву контейнера и пересчитывает компоновку для всех поддеревьев, помеченных как нуждающиеся в этом (те, которые помечены как невалидные). |
Методы, объявленные в классе java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setMixingCutoutShape, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Подробное описание конструкторов
Контейнер
public Container()
Подробное описание методов
getComponentCount
public int getComponentCount()
Примечание: этот метод следует вызывать в рамках блокировки дерева AWT.
- Возвращает:
- количество компонентов в этой панели.
- С:
- 1.1
- См. также:
countComponents
@Deprecated public int countComponents()
- Возвращает:
- количество компонентов в этом контейнере
getComponent
public Component getComponent(int n)
Примечание: этот метод следует вызывать в рамках блокировки дерева AWT.
- Параметры:
-
n- индекс компонента для получения. - Возвращает:
- n-ый компонент в этом контейнере.
- Выбрасывает:
-
ArrayIndexOutOfBoundsException- если n-ый элемент не существует. - См. также:
getComponents
public Component[] getComponents()
Примечание: этот метод следует вызывать в рамках блокировки дерева AWT.
- Возвращает:
- массив всех компонентов в этом контейнере.
- См. также:
getInsets
public Insets getInsets()
Например, у объекта Frame есть верхний отступ, который соответствует высоте заголовка рамки.
- Возвращает:
- отступы этого контейнера.
- С:
- 1.1
- См. также:
insets
@Deprecated public Insets insets()
getInsets().- Возвращает:
- отступы для этого контейнера
add
public Component add(Component comp)
addImpl(java.awt.Component, java.lang.Object, int). Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительным иерархию компонентов. Если контейнер уже отображён, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Параметры:
-
comp- добавляемый компонент - Возвращает:
- переданный компонент
- Выбрасывает:
-
NullPointerException- еслиcompявляетсяnull - См. также:
add
public Component add(String name, Component comp)
addImpl(java.awt.Component, java.lang.Object, int). Этот метод устарел начиная с версии 1.1. Пожалуйста, используйте метод add(Component, Object) вместо него.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительным иерархию компонентов. Если контейнер уже отображён, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Параметры:
-
name- имя добавляемого компонента -
comp- добавляемый компонент - Возвращает:
- добавляемый компонент
- Выбрасывает:
-
NullPointerException- еслиcompявляетсяnull - См. также:
add
public Component add(Component comp, int index)
addImpl(java.awt.Component, java.lang.Object, int). Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительным иерархию компонентов. Если контейнер уже отображён, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Параметры:
-
comp- добавляемый компонент -
index- позиция вставки компонента, или-1для добавления в конец - Возвращает:
- добавляемый компонент
- Выбрасывает:
-
NullPointerException- еслиcompявляетсяnull -
IllegalArgumentException- еслиindexнекорректно (см.addImpl(java.awt.Component, java.lang.Object, int)для деталей) - См. также:
setComponentZOrder
public void setComponentZOrder(Component comp, int index)
Если компонент является дочерним элементом другого контейнера, он удаляется из этого контейнера перед добавлением в этот контейнер. Важное различие между этим методом и java.awt.Container.add(Component, int) заключается в том, что этот метод не вызывает removeNotify для компонента при его удалении из предыдущего контейнера, если это не необходимо и разрешено базовой системой окон. Таким образом, если у компонента есть фокус клавиатуры, он сохраняет фокус при перемещении в новое положение.
Это свойство гарантировано применяется только к лёгким компонентам, не являющимся Container.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительным иерархию компонентов.
Примечание: Не все платформы поддерживают изменение z-порядка тяжёлых компонентов из одного контейнера в другой без вызова removeNotify. Нет способа определить, поддерживает ли платформа это, поэтому разработчики не должны делать никаких предположений.
- Параметры:
-
comp- перемещаемый компонент -
index- позиция в списке контейнера для вставки компонента, гдеgetComponentCount()добавляет в конец - Выбрасывает:
-
NullPointerException- еслиcompявляетсяnull -
IllegalArgumentException- еслиcompявляется одним из родителей контейнера -
IllegalArgumentException- еслиindexнаходится не в диапазоне[0, getComponentCount()]для перемещения между контейнерами, или не в диапазоне[0, getComponentCount()-1]для перемещения внутри контейнера -
IllegalArgumentException- если добавлять контейнер к самому себе -
IllegalArgumentException- если добавлятьWindowв контейнер - С:
- 1.5
- См. также:
getComponentZOrder
public int getComponentZOrder(Component comp)
- Параметры:
-
comp- запрашиваемый компонент - Возвращает:
- индекс z-порядка компонента; в противном случае возвращает -1, если компонент является
nullили не принадлежит контейнеру - С:
- 1.5
- См. также:
add
public void add(Component comp, Object constraints)
addImpl(java.awt.Component, java.lang.Object, int). Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Parameters:
-
comp- компонент, который нужно добавить -
constraints- объект, выражающий ограничения компоновки для этого компонента - Throws:
-
NullPointerException- еслиcompявляетсяnull - Since:
- 1.1
- See Also:
add
public void add(Component comp, Object constraints, int index)
addImpl(java.awt.Component, java.lang.Object, int). Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Parameters:
-
comp- компонент, который нужно добавить -
constraints- объект, выражающий ограничения компоновки для этого -
index- позиция в списке контейнера, в которой нужно вставить компонент;-1означает вставить в конец компонента - Throws:
-
NullPointerException- еслиcompявляетсяnull -
IllegalArgumentException- еслиindexнедействителен (см.addImpl(java.awt.Component, java.lang.Object, int)для подробностей) - See Also:
addImpl
protected void addImpl(Component comp, Object constraints, int index)
addLayoutComponent. Ограничения определяются используемым менеджером компоновки. Например, класс BorderLayout определяет пять ограничений: BorderLayout.NORTH, BorderLayout.SOUTH, BorderLayout.EAST, BorderLayout.WEST, и BorderLayout.CENTER.
Класс GridBagLayout требует объекта типа GridBagConstraints. Неправильный тип объекта ограничений приводит к исключению IllegalArgumentException.
Если текущий менеджер компоновки реализует LayoutManager2, тогда вызывается LayoutManager2.addLayoutComponent(Component,Object). Если текущий менеджер компоновки не реализует LayoutManager2, а constraints является объектом String, то вызывается LayoutManager.addLayoutComponent(String,Component).
Если компонент не является предком этого контейнера и имеет родительский элемент, отличный от null, он удаляется из своего текущего родительского элемента перед добавлением в этот контейнер.
Этот метод нужно переопределять, если программе нужно отслеживать каждый запрос на добавление в контейнер, так как все другие методы добавления делегируют вызов этому методу. Переопределяющий метод обычно должен включать вызов метода суперкласса:
super.addImpl(comp, constraints, index) Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Parameters:
-
comp- компонент, который нужно добавить -
constraints- объект, выражающий ограничения компоновки для этого компонента -
index- позиция в списке контейнера, в которой нужно вставить компонент, где-1означает добавить в конец - Throws:
-
IllegalArgumentException- еслиindexнедействителен; еслиcompявляется потомком этого контейнера, допустимый диапазон —[-1, getComponentCount()-1]; если компонент не является потомком этого контейнера, допустимый диапазон —[-1, getComponentCount()] -
IllegalArgumentException- еслиcompявляется предком этого контейнера -
IllegalArgumentException- если добавляется окно в контейнер -
NullPointerException- еслиcompявляетсяnull - Since:
- 1.1
- See Also:
remove
public void remove(int index)
index, из этого контейнера. Этот метод также уведомляет менеджер компоновки об удалении компонента из компоновки этого контейнера через метод removeLayoutComponent. Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отразить изменения.
- Parameters:
-
index- индекс компонента, который нужно удалить - Throws:
-
ArrayIndexOutOfBoundsException- еслиindexне находится в диапазоне[0, getComponentCount()-1] - Since:
- 1.1
- See Also:
remove
public void remove(Component comp)
removeLayoutComponent. Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отразить изменения.
- Parameters:
-
comp- компонент, который нужно удалить - Throws:
-
NullPointerException- еслиcompявляетсяnull - See Also:
removeAll
public void removeAll()
removeLayoutComponent. Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображается, иерархия должна быть проверена после этого, чтобы отразить изменения.
- See Also:
getLayout
public LayoutManager getLayout()
- Returns:
- текущий менеджер компоновки для этого контейнера
- See Also:
setLayout
public void setLayout(LayoutManager mgr)
Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов.
- Parameters:
-
mgr- указанный менеджер компоновки - See Also:
doLayout
public void doLayout()
validate вместо этого.- Overrides:
-
doLayoutв классеComponent - Since:
- 1.1
- See Also:
layout
@Deprecated public void layout()
doLayout().- Overrides:
-
layoutв классеComponent
isValidateRoot
public boolean isValidateRoot()
Изменения, связанные с макетом, такие как границы потомков корня валидации, не влияют на макет родителя корня валидации. Эта особенность позволяет методу invalidate() прекратить невалидировать иерархию компонентов, когда метод встречает корень валидации. Однако, для сохранения обратной совместимости это новое оптимизированное поведение включено только при установке системной переменной java.awt.smartInvalidate в значение true.
Если иерархия компонентов содержит корни валидации и новое оптимизированное поведение invalidate() включено, метод validate() должен быть вызван на корне валидации ранее невалидированного компонента, чтобы восстановить валидность иерархии позже. В противном случае, для восстановления валидности иерархии компонентов следует использовать вызов метода validate() на контейнере верхнего уровня (например, объект Frame).
Классы Window и Applet являются корнями валидации в AWT. Swing вводит больше корней валидации.
- Возвращает:
- является ли этот контейнер корнем валидации
- С:
- 1.7
- См. также:
invalidate
public void invalidate()
Если менеджер компоновки LayoutManager, установленный на этом контейнере, является экземпляром интерфейса LayoutManager2, то метод LayoutManager2.invalidateLayout(Container) вызывается на нём, передавая этот контейнер Container в качестве аргумента.
После этого метод отмечает этот контейнер как невалидный и невалидирует его предков. Дополнительные сведения см. в методе Component.invalidate().
- Переопределяет:
-
invalidateв классеComponent - См. также:
validate
public void validate()
Валидация контейнера означает вычисление макета его подкомпонентов. Изменения, связанные с макетом, такие как установка границ компонента или добавление компонента в контейнер, автоматически невалидируют контейнер. Обратите внимание, что предки контейнера также могут быть невалидированы (см. Component.invalidate() для получения подробностей). Поэтому для восстановления валидности иерархии должен быть вызван метод
validate() на самом верхнем невалидном контейнере иерархии.
Валидация контейнера может быть довольно ресурсоёмкой операцией. По соображениям производительности разработчик может отложить валидацию иерархии до завершения набора операций, связанных с макетом, например, после добавления всех дочерних элементов в контейнер.
Если этот контейнер Container не валиден, этот метод вызывает метод validateTree и отмечает этот контейнер Container как валидный. В противном случае никаких действий не выполняется.
- Переопределяет:
-
validateв классеComponent - См. также:
validateTree
protected void validateTree()
validate. - См. также:
setFont
public void setFont(Font f)
Этот метод изменяет информацию, связанную с макетом, и поэтому невалидирует иерархию компонентов.
- Переопределяет:
-
setFontв классеComponent - Параметры:
-
f- Шрифт, который станет шрифтом этого контейнера. - С:
- 1.0
- См. также:
getPreferredSize
public Dimension getPreferredSize()
Component.setPreferredSize(Dimension), и этот контейнер Container имеет менеджер компоновки non-null LayoutManager, то используется метод LayoutManager.preferredLayoutSize(Container) для расчета предпочтительного размера. Примечание: некоторые реализации могут кэшировать значение, возвращаемое из LayoutManager. Реализации, использующие кэширование, не обязаны вызывать preferredLayoutSize на LayoutManager каждый раз при вызове этого метода, а вместо этого LayoutManager будет запрошен только после того, как Container станет невалидным.
- Переопределяет:
-
getPreferredSizeв классеComponent - Возвращает:
- экземпляр
Dimension, представляющий предпочтительный размер этого контейнера. - См. также:
preferredSize
@Deprecated public Dimension preferredSize()
getPreferredSize().Component- Переопределяет:
-
preferredSizeв классеComponent - Возвращает:
- предпочтительный размер компонента
getMinimumSize
public Dimension getMinimumSize()
Component.setMinimumSize(Dimension), и этот контейнер Container имеет менеджер компоновки non-null LayoutManager, то используется метод LayoutManager.minimumLayoutSize(Container) для расчёта минимального размера. Примечание: некоторые реализации могут кэшировать возвращаемое значение метода LayoutManager. Реализации, использующие кэширование, не обязаны вызывать minimumLayoutSize на LayoutManager каждый раз при вызове этого метода, вместо этого LayoutManager будет запрошен только после того, как Container станет невалидным.
- Переопределяет:
-
getMinimumSizeв классеComponent - Возвращает:
- экземпляр
Dimension, представляющий минимальный размер этого контейнера. - С:
- 1.1
- См. также:
minimumSize
@Deprecated public Dimension minimumSize()
getMinimumSize().Component- Переопределяет:
-
minimumSizeв классеComponent - Возвращает:
- минимальный размер этого компонента
getMaximumSize
public Dimension getMaximumSize()
Component.setMaximumSize(Dimension) и менеджер компоновки LayoutManager, установленный на этом контейнере Container, является экземпляром LayoutManager2, то используется метод LayoutManager2.maximumLayoutSize(Container) для расчёта максимального размера. Примечание: некоторые реализации могут кэшировать значение, возвращаемое методом LayoutManager2. Реализации, использующие кэширование, не обязаны вызывать maximumLayoutSize на LayoutManager2 каждый раз при вызове этого метода, а вместо этого LayoutManager2 будет запрошен только после того, как Container станет невалидным.
- Переопределяет:
-
getMaximumSizeв классеComponent - Возвращает:
- экземпляр
Dimension, представляющий максимальный размер этого контейнера. - См. также:
getAlignmentX
public float getAlignmentX()
- Overrides:
-
getAlignmentXв классеComponent - Returns:
- горизонтальное выравнивание этого компонента
getAlignmentY
public float getAlignmentY()
- Overrides:
-
getAlignmentYв классеComponent - Returns:
- вертикальное выравнивание этого компонента
paint
public void paint(Graphics g)
- Overrides:
-
paintв классеComponent - Parameters:
-
g- указанное графическое окно - See Also:
update
public void update(Graphics g)
- Overrides:
-
updateв классеComponent - Parameters:
-
g- указанное графическое окно - See Also:
public void print(Graphics g)
- Overrides:
-
printв классеComponent - Parameters:
-
g- указанное графическое окно - See Also:
paintComponents
public void paintComponents(Graphics g)
- Parameters:
-
g- контекст графики. - See Also:
printComponents
public void printComponents(Graphics g)
- Parameters:
-
g- контекст графики. - See Also:
addContainerListener
public void addContainerListener(ContainerListener l)
Обратитесь к Проблемам многопоточности AWT за подробностями о модели многопоточности AWT.
- Parameters:
-
l- слушатель контейнера - See Also:
removeContainerListener
public void removeContainerListener(ContainerListener l)
Обратитесь к Проблемам многопоточности AWT за подробностями о модели многопоточности AWT.
- Parameters:
-
l- слушатель контейнера - See Also:
getContainerListeners
public ContainerListener[] getContainerListeners()
- Returns:
- все слушатели этого контейнера или пустой массив, если слушатели контейнера не зарегистрированы
- Since:
- 1.4
- See Also:
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
addFooListener. Вы можете указать аргумент type с помощью литерала класса, например FooListener.class. Например, вы можете запросить слушателей контейнера для контейнера с помощью следующего кода:
ContainerListener[] cls = (ContainerListener[])(c.getListeners(ContainerListener.class));Если таких слушателей не существует, этот метод возвращает пустой массив.
- Overrides:
-
getListenersв классеComponent - Type Parameters:
-
T- тип слушателей - Parameters:
-
listenerType- тип запрашиваемых слушателей; этот параметр должен указывать интерфейс, который наследуется отjava.util.EventListener - Returns:
- массив всех объектов, зарегистрированных в качестве слушателей на этом контейнере, или пустой массив, если такие слушатели не были добавлены
- Throws:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener -
NullPointerException- еслиlistenerTypeявляетсяnull - Since:
- 1.3
- See Also:
processEvent
protected void processEvent(AWTEvent e)
ContainerEvent, оно вызывает метод processContainerEvent, иначе вызывает метод суперкласса processEvent. Обратите внимание, что если параметр event равен null, поведение не определено и может привести к исключению.
- Overrides:
-
processEventв классеComponent - Parameters:
-
e- событие - See Also:
processContainerEvent
protected void processContainerEvent(ContainerEvent e)
- Объект ContainerListener зарегистрирован через
addContainerListener - События контейнера включены через
enableEvents
Обратите внимание, что если параметр event равен null, поведение не определено и может привести к исключению.
- Parameters:
-
e- событие контейнера - See Also:
deliverEvent
@Deprecated public void deliverEvent(Event e)
dispatchEvent(AWTEvent e)
- Overrides:
-
deliverEventв классеComponent - Parameters:
-
e- событие для доставки
getComponentAt
public Component getComponentAt(int x, int y)
- Overrides:
-
getComponentAtв классеComponent - Parameters:
-
x- координата x -
y- координата y - Returns:
- null, если компонент не содержит указанную точку. Если в запрошенной точке нет дочернего компонента, а точка находится в пределах контейнера, то возвращается сам контейнер; в противном случае возвращается самый верхний дочерний компонент.
- Since:
- 1.1
- See Also:
locate
@Deprecated public Component locate(int x, int y)
getComponentAt(int, int).Component- Overrides:
-
locateв классеComponent - Parameters:
-
x- координата x для поиска компонентов -
y- координата y для поиска компонентов - Returns:
- компонент в указанном месте или
null
getComponentAt
public Component getComponentAt(Point p)
- Overrides:
-
getComponentAtв классеComponent - Parameters:
-
p- точка. - Returns:
- возвращает компонент, содержащий точку, или
nullесли компонент не содержит точку. - Since:
- 1.1
- See Also:
getMousePosition
public Point getMousePosition(boolean allowChildren) throws HeadlessException
Container, если Container находится под указателем мыши, в противном случае возвращает null. Этот метод аналогичен Component.getMousePosition(), за исключением того, что он может учитывать дочерние элементы Container. Если allowChildren является false, этот метод вернёт ненулевое значение только в том случае, если указатель мыши находится непосредственно над Container, а не над частью, скрытой дочерними элементами. Если allowChildren является true, этот метод возвращает ненулевое значение, если указатель мыши находится над Container или любым из его потомков.- Parameters:
-
allowChildren- true, если следует учитывать дочерние элементы - Returns:
- координаты мыши, относящиеся к этому
Component, или null - Throws:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - Since:
- 1.5
- See Also:
findComponentAt
public Component findComponentAt(int x, int y)
Метод findComponentAt отличается от getComponentAt тем, что getComponentAt ищет только непосредственных дочерних элементов контейнера; если содержащий компонент является контейнером, findComponentAt будет искать этот дочерний компонент, чтобы найти вложенный компонент.
- Parameters:
-
x- координата x -
y- координата y - Returns:
- null, если компонент не содержит указанную позицию. Если в запрошенной точке нет дочернего компонента, и точка находится в пределах контейнера, то возвращается сам контейнер.
- Since:
- 1.2
- See Also:
findComponentAt
public Component findComponentAt(Point p)
Метод findComponentAt отличается от getComponentAt тем, что getComponentAt ищет только непосредственных дочерних элементов контейнера; если содержащий компонент является контейнером, findComponentAt будет искать этот дочерний компонент, чтобы найти вложенный компонент.
- Parameters:
-
p- точка. - Returns:
- null, если компонент не содержит указанную позицию. Если в запрошенной точке нет дочернего компонента, и точка находится в пределах контейнера, то возвращается сам контейнер.
- Throws:
-
NullPointerException- еслиpявляетсяnull - Since:
- 1.2
- See Also:
addNotify
public void addNotify()
- Overrides:
-
addNotifyв классеComponent - See Also:
removeNotify
public void removeNotify()
- Overrides:
-
removeNotifyв классеComponent - See Also:
isAncestorOf
public boolean isAncestorOf(Component c)
- Parameters:
-
c- компонент - Returns:
-
trueесли это предок;falseв противном случае. - Since:
- 1.1
paramString
protected String paramString()
Container. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться между реализациями. Возвращаемая строка может быть пустой, но не null.- Overrides:
-
paramStringв классеComponent - Returns:
- строка параметров этого контейнера
list
public void list(PrintStream out, int indent)
Непосредственные дочерние элементы контейнера выводятся с отступом indent+1. Дочерние элементы этих дочерних элементов выводятся с отступом indent+2 и так далее.
- Overrides:
-
listв классеComponent - Parameters:
-
out- поток вывода -
indent- количество пробелов для отступа - Throws:
-
NullPointerException- еслиoutявляетсяnull - Since:
- 1.0
- See Also:
list
public void list(PrintWriter out, int indent)
Непосредственные дочерние элементы контейнера выводятся с отступом indent+1. Дочерние элементы этих дочерних элементов выводятся с отступом indent+2 и так далее.
- Overrides:
-
listв классеComponent - Parameters:
-
out- поток вывода -
indent- количество пробелов для отступа - Throws:
-
NullPointerException- еслиoutявляетсяnull - Since:
- 1.1
- See Also:
setFocusTraversalKeys
public void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)
Значения по умолчанию для клавиш перехода фокуса контейнера зависят от реализации. Sun рекомендует, чтобы все реализации для конкретной платформы использовали одинаковые значения по умолчанию. Рекомендуемые значения для Windows и Unix приведены ниже. Эти рекомендации используются в реализациях Sun AWT.
| Идентификатор | Значение | Значение по умолчанию |
|---|---|---|
| KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS | Обычный прямой переход по клавиатуре | TAB при KEY_PRESSED, CTRL-TAB при KEY_PRESSED |
| KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS | Обычный обратный переход по клавиатуре | SHIFT-TAB при KEY_PRESSED, CTRL-SHIFT-TAB при KEY_PRESSED |
| KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS | Переход на один цикл вверх | нет |
| KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS | Переход на один цикл вниз | нет |
Используя API AWTKeyStroke, код клиента может указать, на каком из двух конкретных событий KeyEvents, KEY_PRESSED или KEY_RELEASED, произойдёт операция перехода фокуса. Однако независимо от того, какое событие KeyEvent указано, все KeyEvents, относящиеся к клавише перехода фокуса, включая связанное событие KEY_TYPED, будут потреблены и не будут переданы ни одному контейнеру. Это ошибка во время выполнения, если указать событие KEY_TYPED как сопоставленное с операцией перехода фокуса или сопоставить одно и то же событие с несколькими операциями перехода фокуса по умолчанию.
Если для набора указано значение null, этот контейнер наследует набор от своего родителя. Если у всех предков этого контейнера для набора указано значение null, используется набор по умолчанию текущего KeyboardFocusManager.
Этот метод может вызвать ClassCastException если любой Object в keystrokes не является AWTKeyStroke.
- Overrides:
-
setFocusTraversalKeysв классеComponent - Parameters:
-
id- одна из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS -
keystrokes- набор AWTKeyStroke для указанной операции - Throws:
-
IllegalArgumentException- если id не является одной из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS, или если keystrokes содержит null, или если какая-либо keystroke представляет событие KEY_TYPED, или если какая-либо keystroke уже сопоставлена с другой операцией перехода фокуса для этого контейнера - Since:
- 1.4
- See Also:
getFocusTraversalKeys
public Set<AWTKeyStroke> getFocusTraversalKeys(int id)
setFocusTraversalKeys для полного описания каждой клавиши.) Если для этого контейнера набор клавиш перехода фокуса не определён явно, возвращается набор родительского контейнера. Если для ни одного из предков этого контейнера набор не определён явно, возвращается набор по умолчанию текущего KeyboardFocusManager.
- Overrides:
-
getFocusTraversalKeysв классеComponent - Parameters:
-
id- одна из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS - Returns:
- набор AWTKeyStrokes для указанной операции. Набор будет неизменяемым и может быть пустым. null никогда не возвращается.
- Throws:
-
IllegalArgumentException- если id не является одной из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS - Since:
- 1.4
- See Also:
areFocusTraversalKeysSet
public boolean areFocusTraversalKeysSet(int id)
false, этот контейнер наследует набор от предка или от текущего KeyboardFocusManager.- Overrides:
-
areFocusTraversalKeysSetв классеComponent - Parameters:
-
id- одна из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS - Returns:
-
trueесли набор клавиш перехода фокуса для данной операции перехода фокуса определён явно для этого компонента;falseв противном случае. - Throws:
-
IllegalArgumentException- если id не является одной из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS - Since:
- 1.4
isFocusCycleRoot
public boolean isFocusCycleRoot(Container container)
true для обоих таких контейнеров.- Overrides:
-
isFocusCycleRootв классеComponent - Parameters:
-
container- контейнер, который нужно проверить - Returns:
-
trueесли указанный контейнер является корнем цикла перехода фокуса для этого контейнера;falseв противном случае - Since:
- 1.4
- See Also:
setFocusTraversalPolicy
public void setFocusTraversalPolicy(FocusTraversalPolicy policy)
Если этот контейнер не является корнем цикла перехода фокуса, политика будет запомнена, но не будет использоваться или унаследована этим или любыми другими контейнерами до тех пор, пока этот контейнер не станет корнем цикла перехода фокуса.
- Parameters:
-
policy- новая политика перехода фокуса для этого контейнера - Since:
- 1.4
- See Also:
getFocusTraversalPolicy
public FocusTraversalPolicy getFocusTraversalPolicy()
- Returns:
- политика перехода фокуса этого контейнера или null, если этот контейнер не является корнем цикла перехода фокуса.
- Since:
- 1.4
- See Also:
isFocusTraversalPolicySet
public boolean isFocusTraversalPolicySet()
false, этот контейнер будет наследовать свою политику перехода фокуса от предка.- Returns:
-
trueесли политика перехода фокуса была явно установлена для этого контейнера;falseв противном случае. - Since:
- 1.4
Установить корень цикла перехода фокуса
public void setFocusCycleRoot(boolean focusCycleRoot)
Альтернативный способ указать порядок перехода детей этого контейнера — сделать этот контейнер поставщиком политики перехода фокуса.
- Параметры:
-
focusCycleRoot- указывает, является ли этот контейнер корнем цикла перехода фокуса - С:
- 1.4
- См. также:
Является ли корнем цикла перехода фокуса
public boolean isFocusCycleRoot()
- Возвращает:
- значение, указывающее, является ли этот контейнер корнем цикла перехода фокуса
- С:
- 1.4
- См. также:
Установить поставщика политики перехода фокуса
public final void setFocusTraversalPolicyProvider(boolean provider)
true, будет использоваться для получения политики перехода фокуса вместо ближайшего предка, являющегося корнем цикла перехода.- Параметры:
-
provider- указывает, будет ли этот контейнер использоваться для предоставления политики перехода фокуса - С:
- 1.5
- См. также:
Является ли поставщиком политики перехода фокуса
public final boolean isFocusTraversalPolicyProvider()
true, то при поиске менеджером фокуса в иерархии контейнеров политики перехода фокуса и обнаружении этого контейнера до любого другого контейнера с этим свойством, установленным в true, или корней циклов перехода, будет использоваться его политика перехода фокуса вместо политики корня цикла перехода.- Возвращает:
-
trueесли этот контейнер является поставщиком политики перехода фокуса,falseв противном случае - С:
- 1.5
- См. также:
передать фокус вниз по циклу
public void transferFocusDownCycle()
- С:
- 1.4
- См. также:
применить ориентацию компонента
public void applyComponentOrientation(ComponentOrientation o)
ComponentOrientation этого контейнера и всех содержащихся в нём компонентов. Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонентов.
- Переопределяет:
-
applyComponentOrientationв классеComponent - Параметры:
-
o- новая ориентация компонента этого контейнера и содержащихся в нём компонентов. - Исключения:
-
NullPointerException- еслиorientationравно null. - С:
- 1.4
- См. также:
добавить слушателя изменения свойств
public void addPropertyChangeListener(PropertyChangeListener listener)
- шрифт этого контейнера ("font")
- цвет фона этого контейнера ("background")
- цвет переднего плана этого контейнера ("foreground")
- возможность получения фокуса этим контейнером ("focusable")
- состояние включения клавиш перехода фокуса для этого контейнера ("focusTraversalKeysEnabled")
- набор клавиш перехода вперёд для этого контейнера ("forwardFocusTraversalKeys")
- набор клавиш перехода назад для этого контейнера ("backwardFocusTraversalKeys")
- набор клавиш перехода вверх по циклу для этого контейнера ("upCycleFocusTraversalKeys")
- набор клавиш перехода вниз по циклу для этого контейнера ("downCycleFocusTraversalKeys")
- политика перехода фокуса для этого контейнера ("focusTraversalPolicy")
- состояние корня цикла фокуса для этого контейнера ("focusCycleRoot")
Если слушатель равен null, исключение не выбрасывается, и никаких действий не выполняется.
- Переопределяет:
-
addPropertyChangeListenerв классеComponent - Параметры:
-
listener- добавляемый слушатель PropertyChangeListener - См. также:
добавить слушателя изменения свойств
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
- шрифт этого контейнера ("font")
- цвет фона этого контейнера ("background")
- цвет переднего плана этого контейнера ("foreground")
- возможность получения фокуса этим контейнером ("focusable")
- состояние включения клавиш перехода фокуса для этого контейнера ("focusTraversalKeysEnabled")
- набор клавиш перехода вперёд для этого контейнера ("forwardFocusTraversalKeys")
- набор клавиш перехода назад для этого контейнера ("backwardFocusTraversalKeys")
- набор клавиш перехода вверх по циклу для этого контейнера ("upCycleFocusTraversalKeys")
- набор клавиш перехода вниз по циклу для этого контейнера ("downCycleFocusTraversalKeys")
- политика перехода фокуса для этого контейнера ("focusTraversalPolicy")
- состояние корня цикла фокуса для этого контейнера ("focusCycleRoot")
- состояние поставщика политики перехода фокуса ("focusTraversalPolicyProvider")
Если слушатель равен null, исключение не выбрасывается, и никаких действий не выполняется.
- Переопределяет:
-
addPropertyChangeListenerв классеComponent - Параметры:
-
propertyName- одно из вышеперечисленных имён свойств -
listener- добавляемый слушатель PropertyChangeListener - См. также:
© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/Container.html