Класс JDesktopPane
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible
@JavaBean(defaultProperty="UI") public class JDesktopPane extends JLayeredPane implements Accessible
JInternalFrame и добавляете их в JDesktopPane. JDesktopPane расширяет JLayeredPane для управления потенциально перекрывающимися внутренними фреймами. Он также сохраняет ссылку на экземпляр DesktopManager, который устанавливается классом UI для текущего визуального стиля (L&F). Обратите внимание, что JDesktopPane не поддерживает рамки. Этот класс обычно используется как родитель JInternalFrames для предоставления подключаемого объекта DesktopManager объекту JInternalFrames. installUI определяет реализацию специфичного для L&F компонента, ответственного за корректную установку переменной desktopManager. Когда родитель JInternalFrame является JDesktopPane, он должен делегировать большую часть своего поведения desktopManager (закрытие, изменение размера и т. д.).
Для получения дополнительной документации и примеров см. Как использовать внутренние фреймы — раздел в Руководстве по Java.
Предупреждение: Swing не потокобезопасен. Дополнительную информацию см. в Политике потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для кратковременного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долговременного хранения всех JavaBeans была добавлена в пакет java.beans. Пожалуйста, обратитесь к XMLEncoder.
- С момента:
- 1.2
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
JDesktopPane.AccessibleJDesktopPane |
Этот класс реализует поддержку доступности для класса JDesktopPane. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JLayeredPane
JLayeredPane.AccessibleJLayeredPane
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent
JComponent.AccessibleJComponent
Вложенные классы/интерфейсы, объявленные в классе java.awt.Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
LIVE_DRAG_MODE |
Указывает, что все содержимое перетаскиваемого элемента должно отображаться внутри панели рабочего стола. |
static final int |
OUTLINE_DRAG_MODE |
Указывает, что внутри панели рабочего стола должен отображаться только контур перетаскиваемого элемента. |
Поля, объявленные в классе javax.swing.JLayeredPane
DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER
Поля, объявленные в классе 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JDesktopPane() |
Создаёт новый JDesktopPane. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
addImpl |
Добавляет указанный компонент в этот контейнер в указанном индексе. |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext , связанный с этим JDesktopPane. |
JInternalFrame[] |
getAllFrames() |
Возвращает все JInternalFrames, отображаемые в данный момент на рабочем столе. |
JInternalFrame[] |
getAllFramesInLayer |
Возвращает все JInternalFrames, отображаемые в данный момент на указанном слое рабочего стола. |
DesktopManager |
getDesktopManager() |
Возвращает DesktopManger, который обрабатывает действия UI, специфичные для рабочего стола. |
int |
getDragMode() |
Получает текущий "стиль перетаскивания", используемый панелью рабочего стола. |
JInternalFrame |
getSelectedFrame() |
Возвращает текущий активный JInternalFrame в этом JDesktopPane, или null, если в данный момент нет активного JInternalFrame. |
DesktopPaneUI |
getUI() |
Возвращает объект L&F, который отображает этот компонент. |
String |
getUIClassID() |
Возвращает имя класса L&F, который отображает этот компонент. |
protected String |
paramString() |
Возвращает строковое представление этого JDesktopPane. |
void |
remove |
Удаляет компонент с указанным индексом из этой панели. |
void |
removeAll() |
Удаляет все компоненты из этого контейнера. |
JInternalFrame |
selectFrame |
Выбирает следующий JInternalFrame на этой панели рабочего стола. |
void |
setComponentZOrder |
Перемещает указанный компонент в указанный индекс порядка z в контейнере. |
void |
setDesktopManager |
Устанавливает DesktopManger, который будет обрабатывать действия UI, специфичные для рабочего стола. |
void |
setDragMode |
Устанавливает "стиль перетаскивания", используемый панелью рабочего стола. |
void |
setSelectedFrame |
Устанавливает текущий активный JInternalFrame в этом JDesktopPane. |
void |
setUI |
Устанавливает объект L&F, который отображает этот компонент. |
void |
updateUI() |
Уведомление от UIManager о том, что L&F изменился. |
Методы, объявленные в классе javax.swing.JLayeredPane
getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, putLayer, setLayer, setLayer, setPosition
Методы, объявленные в классе 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, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, 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
Методы, объявленные в классе java.awt.Container
add, add, add, add, add, addContainerListener, 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, removeContainerListener, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, 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
Подробное описание полей
LIVE_DRAG_MODE
public static final int LIVE_DRAG_MODE
OUTLINE_DRAG_MODE
public static final int OUTLINE_DRAG_MODE
Подробное описание конструкторов
JDesktopPane
public JDesktopPane()
JDesktopPane.Подробное описание методов
getUI
public DesktopPaneUI getUI()
- Переопределяет:
-
getUIв классеJComponent - Возвращает:
- объект L&F
DesktopPaneUI, который отображает этот компонент
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel.") public void setUI(DesktopPaneUI ui)
- Параметры:
-
ui- объект DesktopPaneUI L&F - См. также:
setDragMode
@BeanProperty(enumerationValues={"JDesktopPane.LIVE_DRAG_MODE","JDesktopPane.OUTLINE_DRAG_MODE"}, description="Dragging style for internal frame children.") public void setDragMode(int dragMode) - Параметры:
-
dragMode- стиль перетаскивания элементов на рабочем столе - С:
- 1.3
- См. также:
getDragMode
public int getDragMode()
- Возвращает:
- либо
Live_DRAG_MODE, либоOUTLINE_DRAG_MODE - С:
- 1.3
- См. также:
getDesktopManager
public DesktopManager getDesktopManager()
DesktopManger, обрабатывающий действия пользовательского интерфейса, специфичные для рабочего стола.- Возвращает:
DesktopManger, обрабатывающий действия пользовательского интерфейса, специфичные для рабочего стола
setDesktopManager
@BeanProperty(description="Desktop manager to handle the internal frames in the desktop pane.") public void setDesktopManager(DesktopManager d)
DesktopManger, который будет обрабатывать действия пользовательского интерфейса, специфичные для рабочего стола. Может быть переопределён LookAndFeel. - Параметры:
-
d- используемыйDesktopManager
updateUI
public void updateUI()
UIManager, что L&F изменился. Заменяет текущий объект UI на последнюю версию из UIManager. - Переопределяет:
-
updateUIв классеJComponent - См. также:
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "DesktopPaneUI"
- См. также:
getAllFrames
@BeanProperty(bound=false) public JInternalFrame[] getAllFrames()
JInternalFrames, отображаемые на рабочем столе. Возвращает иконные, и развернутые окна.- Возвращает:
- массив объектов
JInternalFrame
getSelectedFrame
public JInternalFrame getSelectedFrame()
JInternalFrame в этом JDesktopPane, или null, если нет активного JInternalFrame. - Возвращает:
- текущее активное
JInternalFrameилиnull - С:
- 1.3
setSelectedFrame
public void setSelectedFrame(JInternalFrame f)
JInternalFrame в этом JDesktopPane. Этот метод используется для преодоления разрыва пакетов между JDesktopPane и кодом реализации платформы и не должен вызываться напрямую. Чтобы визуально выбрать окно, клиент должен вызвать JInternalFrame.setSelected(true) для активации окна.- Параметры:
-
f- текущее выбранное внутреннее окно - С:
- 1.3
- См. также:
getAllFramesInLayer
public JInternalFrame[] getAllFramesInLayer(int layer)
JInternalFrames, отображаемые в указанном слое рабочего стола. Возвращает иконные, а также развернутые окна.- Параметры:
-
layer- целое число, определяющее слой рабочего стола - Возвращает:
- массив объектов
JInternalFrame - См. также:
selectFrame
public JInternalFrame selectFrame(boolean forward)
JInternalFrame на этом рабочем столе.- Параметры:
-
forward- логическое значение, указывающее направление выбора;trueдля вперёд,falseдля назад - Возвращает:
- выбранное JInternalFrame или
null, если ничего не было выбрано - С:
- 1.6
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) вызывается на нём.
Если компонент не является предком этого контейнера и имеет родительский элемент, он удаляется из текущего родительского элемента перед добавлением в этот контейнер.
Этот метод нужно переопределять, если программе нужно отслеживать каждый запрос на добавление в контейнер, поскольку все другие методы добавления отсылают к этому. Метод переопределения обычно должен включать вызов версии метода базового класса:
super.addImpl(comp, constraints, index) Этот метод изменяет информацию, связанную с компоновкой, и поэтому делает недействительной иерархию компонентов. Если контейнер уже отображён, иерархия должна быть проверена после этого, чтобы отобразить добавленный компонент.
- Переопределяет:
-
addImplв классеContainer - Параметры:
-
comp- добавляемый компонент -
constraints- объект, выражающий ограничения компоновки для этого компонента -
index- позиция в списке контейнера, в которую нужно вставить компонент, где-1означает добавление в конец - С:
- 1.6
- См. также:
удалить
public void remove(int index)
- Переопределяет:
-
removeв классеJLayeredPane - Параметры:
-
index- целое число, определяющее компонент для удаления - С:
- 1.6
- См. также:
removeAll
public void removeAll()
- Переопределяет:
-
removeAllв классеJLayeredPane - С:
- 1.6
- См. также:
setComponentZOrder
public void setComponentZOrder(Component comp, int index)
Если компонент является потомком другого контейнера, он удаляется из этого контейнера перед добавлением в этот контейнер. Важное различие между этим методом и java.awt.Container.add(Component, int) заключается в том, что этот метод не вызывает removeNotify для компонента при удалении его из предыдущего контейнера, если это не необходимо и разрешено основой системы отображения. Таким образом, если компонент имеет фокус клавиатуры, он сохраняет фокус при перемещении в новое положение.
Это свойство гарантированно применяется только к облегчённым компонентам, не являющимся Container.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает иерархию компонентов недействительной.
Примечание: Не все платформы поддерживают изменение порядка z тяжеловесных компонентов из одного контейнера в другой без вызова removeNotify. Нет способа обнаружить, поддерживает ли платформа это, поэтому разработчики не должны делать никаких предположений.
- Переопределяет:
-
setComponentZOrderв классеContainer - Параметры:
-
comp- компонент, который нужно переместить -
index- позиция в списке контейнера для вставки компонента, гдеgetComponentCount()добавляет в конец - С:
- 1.6
- См. также:
paramString
protected String paramString()
JDesktopPane. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться между реализациями. Возвращаемая строка может быть пустой, но не null.- Переопределяет:
-
paramStringв классеJLayeredPane - Возвращает:
- строковое представление этого
JDesktopPane
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
AccessibleContext, связанный с этим JDesktopPane. Для панелей рабочего стола AccessibleContext принимает форму AccessibleJDesktopPane. Новый экземпляр AccessibleJDesktopPane создаётся при необходимости.- Определяется в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеJLayeredPane - Возвращает:
AccessibleJDesktopPane, который служитAccessibleContextэтогоJDesktopPane
© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/JDesktopPane.html