- 所有已实现的接口:
ImageObserver,MenuContainer,Serializable,Accessible
JInternalFrame 对象并将它们添加到 JDesktopPane 。 JDesktopPane 扩展 JLayeredPane 以管理可能重叠的内部框架。它还维护对 DesktopManager 实例的引用,该实例由 UI 类为当前外观 (L&F) 设置。请注意,JDesktopPane 不支持边框。
此类通常用作 JInternalFrames 的父类,以向 JInternalFrames 提供可插入的 DesktopManager 对象。 L&F 特定实现的 installUI 负责适当地设置 desktopManager 变量。当 JInternalFrame 的父级是 JDesktopPane 时,它应该将大部分行为委托给 desktopManager(关闭、调整大小等)。
有关更多文档和示例,请参阅 如何使用内部框架,这是 The Java Tutorial 中的一个部分。
Warning: Swing 不是线程安全的。有关详细信息,请参阅 Swing 的线程策略。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
- 自从:
- 1.2
- 参见:
-
内部类总结
内部类在类 javax.swing.JLayeredPane 中声明的嵌套类/接口
JLayeredPane.AccessibleJLayeredPane在类 javax.swing.JComponent 中声明的嵌套类/接口
JComponent.AccessibleJComponent在类 java.awt.Container 中声明的嵌套类/接口
Container.AccessibleAWTContainer -
字段摘要
字段修饰符和类型Field描述static final int指示被拖动项目的全部内容应显示在桌面窗格内。static final int指示只有被拖动的项目的轮廓应该出现在桌面窗格内。在类 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 -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述protected void将指定的组件添加到此容器的指定索引处。获取与此JDesktopPane关联的AccessibleContext。返回当前显示在桌面上的所有JInternalFrames。getAllFramesInLayer(int layer) 返回桌面指定层当前显示的所有JInternalFrames。返回处理特定于桌面的 UI 操作的DesktopManger。int获取桌面窗格使用的当前“拖动样式”。返回此JDesktopPane中当前活动的JInternalFrame,如果当前没有JInternalFrame处于活动状态,则返回null。getUI()返回呈现此组件的 L&F 对象。返回呈现此组件的 L&F 类的名称。protected String返回此JDesktopPane的字符串表示形式voidremove(int index) 从此窗格中删除索引组件。void从此容器中删除所有组件。selectFrame(boolean forward) 选择此桌面窗格中的下一个JInternalFrame。voidsetComponentZOrder(Component comp, int index) 将指定组件移动到容器中指定的 z 顺序索引。void设置将处理特定于桌面的 UI 操作的DesktopManger。voidsetDragMode(int dragMode) 设置桌面窗格使用的“拖动样式”。void在此JDesktopPane中设置当前活动的JInternalFrame。voidsetUI(DesktopPaneUI ui) 设置呈现此组件的 L&F 对象。voidupdateUI()来自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
返回呈现此组件的 L&F 对象。- 重写:
getUI在类JComponent中- 返回:
-
呈现此组件的
DesktopPaneUI对象
-
setUI
@BeanProperty (hidden =true, visualUpdate =true, description ="The UI object that implements the Component\'s LookAndFeel.") public void setUI(DesktopPaneUI ui) 设置呈现此组件的 L&F 对象。- 参数:
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
返回处理特定于桌面的 UI 操作的DesktopManger。- 返回:
-
处理特定于桌面的 UI 操作的
DesktopManger
-
setDesktopManager
@BeanProperty (description ="Desktop manager to handle the internal frames in the desktop pane.") public void setDesktopManager(DesktopManager d) 设置将处理特定于桌面的 UI 操作的DesktopManger。这可能会被LookAndFeel覆盖。- 参数:
d- 要使用的DesktopManager
-
updateUI
public void updateUI()来自UIManager的通知,L&F 已更改。用UIManager的最新版本替换当前 UI 对象。- 重写:
updateUI在类JComponent中- 参见:
-
getUIClassID
返回呈现此组件的 L&F 类的名称。- 重写:
getUIClassID在类JComponent中- 返回:
- 字符串“DesktopPaneUI”
- 参见:
-
getAllFrames
返回当前显示在桌面上的所有JInternalFrames。返回图标化框架和扩展框架。- 返回:
JInternalFrame对象数组
-
getSelectedFrame
返回此JDesktopPane中当前活动的JInternalFrame,如果当前没有JInternalFrame处于活动状态,则返回null。- 返回:
-
当前活动的
JInternalFrame或null - 自从:
- 1.3
-
setSelectedFrame
在此JDesktopPane中设置当前活动的JInternalFrame。此方法用于弥合 JDesktopPane 与平台实现代码之间的封装间隙,不应直接调用。要直观地选择框架,客户端必须调用 JInternalFrame.setSelected(true) 来激活框架。- 参数:
f- 当前选择的内部框架- 自从:
- 1.3
- 参见:
-
getAllFramesInLayer
返回桌面指定层当前显示的所有JInternalFrames。返回图标化框架和扩展框架。- 参数:
layer- 指定桌面层的 int- 返回:
JInternalFrame对象数组- 参见:
-
selectFrame
选择此桌面窗格中的下一个JInternalFrame。- 参数:
forward- 指示选择方向的boolean;true向前,false向后- 返回:
-
被选中的 JInternalFrame 或
null如果没有被选中 - 自从:
- 1.6
-
addImpl
将指定的组件添加到此容器的指定索引处。此方法还通知布局管理器通过addLayoutComponent方法使用指定的约束对象将组件添加到此容器的布局。约束由正在使用的特定布局管理器定义。例如,
BorderLayout类定义了五个约束:BorderLayout.NORTH、BorderLayout.SOUTH、BorderLayout.EAST、BorderLayout.WEST和BorderLayout.CENTER。GridBagLayout类需要一个GridBagConstraints对象。未能传递正确类型的约束对象会导致IllegalArgumentException。如果当前布局管理器实现了
LayoutManager2,那么将在其上调用LayoutManager2.addLayoutComponent(Component,Object)。如果当前布局管理器未实现LayoutManager2,并且约束是String,则在其上调用LayoutManager.addLayoutComponent(String,Component)。如果组件不是此容器的祖先并且具有非空父级,则在将其添加到此容器之前将其从当前父级中删除。
如果程序需要跟踪对容器的每个添加请求,这是要重写的方法,因为所有其他添加方法都遵循此方法。重写方法通常应该包括对超类方法版本的调用:
super.addImpl(comp, constraints, index)此方法更改与布局相关的信息,因此使组件层次结构无效。如果已经显示容器,则必须随后验证层次结构才能显示添加的组件。
-
remove
public void remove(int index) 从此窗格中删除索引组件。这是绝对索引,忽略图层。- 重写:
remove在类JLayeredPane中- 参数:
index- 指定要删除的组件的 int- 自从:
- 1.6
- 参见:
-
removeAll
public void removeAll()从此容器中删除所有组件。- 重写:
removeAll在类JLayeredPane中- 自从:
- 1.6
- 参见:
-
setComponentZOrder
将指定组件移动到容器中指定的 z 顺序索引。 z-order 决定了组件被绘制的顺序;具有最高 z 顺序的组件首先绘制,具有最低 z 顺序的组件最后绘制。在组件重叠的地方,具有较低 z 顺序的组件会重写具有较高 z 顺序的组件。如果该组件是某个其他容器的子组件,则在添加到该容器之前将其从该容器中移除。此方法与
java.awt.Container.add(Component, int)之间的重要区别在于,除非必要且底层本机窗口系统允许,否则此方法不会在组件上调用removeNotify并将其从其先前的容器中删除。这样,如果组件有键盘焦点,它会在移动到新位置时保持焦点。此属性保证仅适用于轻量级非
Container组件。此方法更改与布局相关的信息,因此使组件层次结构无效。
笔记:并非所有平台都支持在不调用
removeNotify的情况下将重量级组件的 z 顺序从一个容器更改为另一个容器。无法检测平台是否支持此功能,因此开发人员不应做出任何假设。- 重写:
setComponentZOrder在类Container中- 参数:
comp- 要移动的组件index- 容器列表中要插入组件的位置,其中getComponentCount()附加到末尾- 自从:
- 1.6
- 参见:
-
paramString
返回此JDesktopPane的字符串表示形式。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是null。- 重写:
paramString在类JLayeredPane中- 返回:
-
这个
JDesktopPane的字符串表示
-
getAccessibleContext
获取与此JDesktopPane关联的AccessibleContext。对于桌面窗格,AccessibleContext采用AccessibleJDesktopPane的形式。如有必要,将创建一个新的AccessibleJDesktopPane实例。- 指定者:
getAccessibleContext在接口Accessible中- 重写:
getAccessibleContext在类JLayeredPane中- 返回:
-
一个
AccessibleJDesktopPane作为这个JDesktopPane的AccessibleContext
-