public class JSplitPane extends JComponent implements Accessible
JSplitPane用于划分两个(也只有两个) Component s。
两个Component都基于外观和手感实现图形划分,然后两个Component可以由用户进行交互式调整大小。
有关使用JSplitPane的信息, 请参见Java Tutorial中的How to Use Split Panes 。
分割窗格中的两个Component可以使用JSplitPane.HORIZONTAL_SPLIT ,或从顶部到底部使用JSplitPane.VERTICAL_SPLIT 。 更改Component s的大小的首选方法是调用setDividerLocation ,其中location是新的x或y位置,具体取决于JSplitPane的JSplitPane 。
要将Component调整为首选大小,请调用resetToPreferredSizes 。
当用户调整Component s的最小尺寸时, Components用于确定最大/最小位置,可设置为Component 。 如果两个组件的最小大小大于拆分窗格的大小,则分隔符将不允许您调整其大小。 要更改JComponent的最小大小,请参阅JComponent.setMinimumSize(java.awt.Dimension) 。
当用户调整拆分窗格大小时,新空间将基于resizeWeight属性分布在两个组件之间。 值为0,默认值,表示右/底组件获取所有空间,其中值为1表示左/顶组件获取所有空间。
警告: Swing不是线程安全的。 有关更多信息,请参阅Swing's Threading Policy 。
警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,对所有JavaBeans的长期存储的支持已经添加到java.beans包中。 请参阅XMLEncoder 。
| Modifier and Type | Class and Description |
|---|---|
protected class |
JSplitPane.AccessibleJSplitPane
这个类实现了可访问性支持
JSplitPane类。
|
JComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
static String |
BOTTOM
用来添加
Component其他下方
Component 。
|
static String |
CONTINUOUS_LAYOUT_PROPERTY
continuousLayout的绑定属性名称。
|
protected boolean |
continuousLayout
在调整大小时是否不断重新显示视图。
|
static String |
DIVIDER
用来添加
Component将代表分频器。
|
static String |
DIVIDER_LOCATION_PROPERTY
dividerLocation的绑定属性。
|
static String |
DIVIDER_SIZE_PROPERTY
边界的绑定属性名称。
|
protected int |
dividerSize
分隔线的尺寸
|
static int |
HORIZONTAL_SPLIT
水平分割表示
Component沿x轴分割。
|
static String |
LAST_DIVIDER_LOCATION_PROPERTY
最后位置的绑定属性。
|
protected int |
lastDividerLocation
拆分窗格的上一个位置。
|
static String |
LEFT
用于将添加
Component其他左侧
Component 。
|
protected Component |
leftComponent
左或顶部组件。
|
static String |
ONE_TOUCH_EXPANDABLE_PROPERTY
1TouchExpandable的绑定属性。
|
protected boolean |
oneTouchExpandable
是否提供了一个小部件来快速展开/折叠拆分窗格?
|
protected int |
orientation
观点如何分裂。
|
static String |
ORIENTATION_PROPERTY
方向(水平或垂直)的绑定属性名称。
|
static String |
RESIZE_WEIGHT_PROPERTY
重量限制属性。
|
static String |
RIGHT
用于将添加
Component其他权
Component 。
|
protected Component |
rightComponent
右侧或底部组件。
|
static String |
TOP
用来添加
Component上述其它
Component 。
|
static int |
VERTICAL_SPLIT
垂直分割表示
Component s沿y轴分割。
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
JSplitPane()
创建一个新的
JSplitPane配置为使用组件的两个按钮水平地并排排列子组件。
|
JSplitPane(int newOrientation)
创建一个新的
JSplitPane配置指定的方向。
|
JSplitPane(int newOrientation, boolean newContinuousLayout)
创建一个新的
JSplitPane与指定的方向和重绘样式。
|
JSplitPane(int newOrientation, boolean newContinuousLayout, Component newLeftComponent, Component newRightComponent)
创建一个新
JSplitPane具有指定方向和重绘方式,并使用指定的组件。
|
JSplitPane(int newOrientation, Component newLeftComponent, Component newRightComponent)
创建一个新
JSplitPane用指定的方向和指定的组件。
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addImpl(Component comp, Object constraints, int index)
将指定的组件添加到此拆分窗格。
|
AccessibleContext |
getAccessibleContext()
获取与此JSplitPane关联的AccessibleContext。
|
Component |
getBottomComponent()
返回下面的组件或分隔符的右侧。
|
int |
getDividerLocation()
返回传递给
setDividerLocation的最后一个值。
|
int |
getDividerSize()
返回分隔符的大小。
|
int |
getLastDividerLocation()
返回分隔符所在的最后一个位置。
|
Component |
getLeftComponent()
将分量返回到左侧(或上方)。
|
int |
getMaximumDividerLocation()
从外观实现中返回分隔符的最大位置。
|
int |
getMinimumDividerLocation()
从外观实现中返回分隔符的最小位置。
|
int |
getOrientation()
返回方向。
|
double |
getResizeWeight()
返回确定如何分配额外空间的数字。
|
Component |
getRightComponent()
将分量返回到右侧(或更低)。
|
Component |
getTopComponent()
返回上面的组件,或者分隔符的左边。
|
SplitPaneUI |
getUI()
返回
SplitPaneUI所提供当前的外观和感觉。
|
String |
getUIClassID()
返回呈现此组件的L&F类的名称。
|
boolean |
isContinuousLayout()
获得
continuousLayout财产。
|
boolean |
isOneTouchExpandable()
获得
oneTouchExpandable属性。
|
boolean |
isValidateRoot()
返回true,所以调用这个
revalidate的任何后代的
JSplitPane将导致请求排队,这将验证
JSplitPane及其所有后代。
|
protected void |
paintChildren(Graphics g)
Subclassed消息界面与
finishedPaintingChildren之后超级已经被消息,以及画边框。
|
protected String |
paramString()
返回此
JSplitPane的字符串表示
JSplitPane 。
|
void |
remove(Component component)
从窗格中删除子组件
component 。
|
void |
remove(int index)
删除
Component指定索引处。
|
void |
removeAll()
从拆分窗格中删除所有子组件。
|
void |
resetToPreferredSizes()
根据儿童组件的首选大小,
JSplitPane布局。
|
void |
setBottomComponent(Component comp)
设置下面的分量,或分配器的右侧。
|
void |
setContinuousLayout(boolean newContinuousLayout)
设置
continuousLayout属性的值,该属性必须为
true ,以便在用户干预期间不断重新显示和布局子组件。
|
void |
setDividerLocation(double proportionalLocation)
将分隔位置设置为JSplitPane的大小的
JSplitPane 。
|
void |
setDividerLocation(int location)
设置分频器的位置。
|
void |
setDividerSize(int newSize)
设置分频器的大小。
|
void |
setLastDividerLocation(int newLastLocation)
设置分频器的最后一个位置为
newLastLocation 。
|
void |
setLeftComponent(Component comp)
将组件设置在左边(或更高)分隔线。
|
void |
setOneTouchExpandable(boolean newValue)
设置
oneTouchExpandable属性的值,它们必须为
true为
JSplitPane提供一个UI小部件在分隔符上以快速扩展/折叠分频器。
|
void |
setOrientation(int orientation)
设置方向,或分离器的分割方式。
|
void |
setResizeWeight(double value)
指定当拆分窗格的大小更改时如何分配额外的空间。
|
void |
setRightComponent(Component comp)
将组件设置在右侧(或更低)分隔线。
|
void |
setTopComponent(Component comp)
设置上面的分量,或分隔线的左边。
|
void |
setUI(SplitPaneUI ui)
设置渲染此组件的L&F对象。
|
void |
updateUI()
UIManager的
UIManager表明L&F已经改变了。
|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, 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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, 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, updateadd, 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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeaction, 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, 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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic static final int VERTICAL_SPLIT
Component沿y轴分割。
例如,两个Component将被分割成一个在另一个之上。
public static final int HORIZONTAL_SPLIT
Component沿x轴分割。
例如两个Component将被拆分到另一个的左边。
public static final String LEFT
Component其他左侧
Component 。
public static final String RIGHT
Component其他权
Component 。
public static final String TOP
Component上述其它
Component 。
public static final String BOTTOM
Component其他下方
Component 。
public static final String DIVIDER
Component将代表分频器。
public static final String ORIENTATION_PROPERTY
public static final String CONTINUOUS_LAYOUT_PROPERTY
public static final String DIVIDER_SIZE_PROPERTY
public static final String ONE_TOUCH_EXPANDABLE_PROPERTY
public static final String LAST_DIVIDER_LOCATION_PROPERTY
public static final String DIVIDER_LOCATION_PROPERTY
public static final String RESIZE_WEIGHT_PROPERTY
protected int orientation
protected boolean continuousLayout
protected Component leftComponent
protected Component rightComponent
protected int dividerSize
protected boolean oneTouchExpandable
protected int lastDividerLocation
public JSplitPane()
JSplitPane ,配置为使用组件的两个按钮水平并排排列子组件。
@ConstructorProperties(value="orientation") public JSplitPane(int newOrientation)
JSplitPane方向配置的新的JSplitPane。
newOrientation -
JSplitPane.HORIZONTAL_SPLIT或
JSplitPane.VERTICAL_SPLIT
IllegalArgumentException - 如果
orientation不是HORIZONTAL_SPLIT或VERTICAL_SPLIT之一。
public JSplitPane(int newOrientation,
boolean newContinuousLayout)
JSplitPane与指定的方向和重绘样式。
newOrientation -
JSplitPane.HORIZONTAL_SPLIT或
JSplitPane.VERTICAL_SPLIT
newContinuousLayout - 一个布尔值,对于组件,当分隔符更改位置时,连续重画的组件为true,false等待,直到分隔符位置停止更改为重绘
IllegalArgumentException - 如果
orientation不是HORIZONTAL_SPLIT或VERTICAL_SPLIT中的一个
public JSplitPane(int newOrientation,
Component newLeftComponent,
Component newRightComponent)
JSplitPane用指定的方向和指定的组件。
newOrientation -
JSplitPane.HORIZONTAL_SPLIT或
JSplitPane.VERTICAL_SPLIT
newLeftComponent -
Component将出现在水平拆分窗格左侧或垂直拆分窗格顶部
newRightComponent -
Component将出现在水平拆分窗格的右侧,或垂直拆分窗格的底部
IllegalArgumentException - 如果
orientation不是以下之一:HORIZONTAL_SPLIT或VERTICAL_SPLIT
public JSplitPane(int newOrientation,
boolean newContinuousLayout,
Component newLeftComponent,
Component newRightComponent)
JSplitPane具有指定的方向和重绘样式以及指定的组件。
newOrientation -
JSplitPane.HORIZONTAL_SPLIT或
JSplitPane.VERTICAL_SPLIT
newContinuousLayout - 一个布尔值,对于组件按分隔符更改位置连续重绘的值为true,false等待,直到分隔符位置停止更改为重绘
newLeftComponent -所述
Component将出现在一个水平分离式窗格的左侧,或在一个垂直分离式窗格的顶部
newRightComponent -
Component将出现在水平拆分窗格的右侧,或垂直拆分窗格的底部
IllegalArgumentException - 如果
orientation不是HORIZONTAL_SPLIT或VERTICAL_SPLIT之一
public void setUI(SplitPaneUI ui)
ui -
SplitPaneUI L&F对象
UIDefaults.getUI(javax.swing.JComponent)
public SplitPaneUI getUI()
SplitPaneUI所提供当前的外观和感觉。
SplitPaneUI对象
public void updateUI()
UIManager ,L&F已经改变。
从UIManager替换最新版本的当前UI对象。
updateUI在
JComponent
JComponent.updateUI()
public String getUIClassID()
getUIClassID在
JComponent
JComponent.getUIClassID() ,
UIDefaults.getUI(javax.swing.JComponent)
public void setDividerSize(int newSize)
newSize - 以像素为单位给出分隔符的大小
public int getDividerSize()
public void setLeftComponent(Component comp)
comp - 显示在那个位置的
Component
public Component getLeftComponent()
Component显示在那个位置
public void setTopComponent(Component comp)
comp - 显示在那个位置的
Component
public Component getTopComponent()
Component显示在那个位置
public void setRightComponent(Component comp)
comp - 显示在那个位置的
Component
public Component getRightComponent()
Component显示在该位置
public void setBottomComponent(Component comp)
comp - 显示在那个位置的
Component
public Component getBottomComponent()
Component显示在该位置
public void setOneTouchExpandable(boolean newValue)
oneTouchExpandable属性的值,它们必须为true ,以便JSplitPane在JSplitPane上提供UI小部件以快速扩展/折叠分频器。
此属性的默认值为false 。
有些看起来和感觉可能不支持一触即发展;
他们将忽略此属性。
newValue -
true以指定拆分窗格应提供折叠/展开小部件
isOneTouchExpandable()
public boolean isOneTouchExpandable()
oneTouchExpandable属性。
oneTouchExpandable属性
setOneTouchExpandable(boolean)
public void setLastDividerLocation(int newLastLocation)
newLastLocation 。
newLastLocation - 一个整数,指定最后一个分隔符位置(以像素为单位),从窗格的左(或上)边到分隔符的左(或上)边
public int getLastDividerLocation()
public void setOrientation(int orientation)
orientation - 指定方向的整数
IllegalArgumentException - 如果方向不是以下之一:HORIZONTAL_SPLIT或VERTICAL_SPLIT。
public int getOrientation()
setOrientation(int)
public void setContinuousLayout(boolean newContinuousLayout)
continuousLayout属性的值,该属性必须为true ,以便在用户干预期间不断重新显示和布局子组件。
此属性的默认值与外观和感觉相关。
有些外观和感觉可能不支持连续布局;
他们将忽略此属性。
newContinuousLayout -
true如果分配器更改位置时应连续重绘组件
isContinuousLayout()
public boolean isContinuousLayout()
continuousLayout属性。
continuousLayout属性
setContinuousLayout(boolean)
public void setResizeWeight(double value)
value - 如上所述
IllegalArgumentException - 如果
value是<0或> 1
public double getResizeWeight()
public void resetToPreferredSizes()
JSplitPane布局。
这可能会导致更改分配器位置。
public void setDividerLocation(double proportionalLocation)
JSplitPane 。
这种方法是按照setDividerLocation(int)来setDividerLocation(int) 。 此方法将立即根据当前大小更改拆分窗格的大小。 如果拆分窗格未正确实现并在屏幕上,此方法将不起作用(新分隔符位置将变为(当前大小*比例位置),为0)。
proportionalLocation - 一个双精度浮点值,用于指定从零(上/左)到1.0(下/右)的百分比,
IllegalArgumentException - 如果指定的位置是<0或> 1.0
public void setDividerLocation(int location)
setLastDividerLocation进行更新。
location - 指定UI特定值(通常为像素数)的int
public int getDividerLocation()
setDividerLocation的最后一个值。
从此方法返回的值可能与实际分隔符位置不同(如果setDividerLocation传递的值大于当前大小)。
public int getMinimumDividerLocation()
null -1
public int getMaximumDividerLocation()
null -1
public void remove(Component component)
component 。
根据需要重置leftComponent或rightComponent实例变量。
remove在
Container
component - 要删除的
Component
Container.add(java.awt.Component) ,
Container.invalidate() ,
Container.validate() ,
Container.remove(int)
public void remove(int index)
Component指定索引处。
根据需要更新leftComponent和rightComponent实例变量,然后更新消息超级。
remove在
Container
index - 指定要删除的组件的整数,其中1指定左/顶组件,2指定底部/右组件
Container.add(java.awt.Component) ,
Container.invalidate() ,
Container.validate() ,
Container.getComponentCount()
public void removeAll()
leftComonent和rightComponent实例变量。
public boolean isValidateRoot()
revalidate的任何后代调用
JSplitPane将导致请求排队,这将验证
JSplitPane及其所有后代。
isValidateRoot在类
JComponent
JComponent.revalidate() ,
Container.isValidateRoot()
protected void addImpl(Component comp, Object constraints, int index)
constraints标识了左/上或右/底部子组件,并且先前添加了具有该标识符的组件,则将其删除,然后将添加comp 。
如果constraints不是已知标识符之一,则布局管理器可能会抛出一个IllegalArgumentException 。
可能的约束对象(Strings)是:
constraints对象为null ,则该组件将添加到第一个可用位置(左/顶如果打开,否则右/底)。
addImpl在
Container
comp - 要添加的组件
constraints - 指定
Object组件的布局约束(位置)的Object
index - 指定容器列表中的索引的整数。
IllegalArgumentException - 如果
constraints对象与现有组件不匹配
Container.addImpl(Component, Object, int)
protected void paintChildren(Graphics g)
finishedPaintingChildren之后超级已经被消息,以及绘画边框。
paintChildren在
JComponent
g - 要绘画的
Graphics上下文
JComponent.paint(java.awt.Graphics) ,
Container.paint(java.awt.Graphics)
protected String paramString()
JSplitPane的字符串表示JSplitPane 。
该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。
返回的字符串可能为空,但可能不是null 。
paramString在
JComponent
JSplitPane的字符串表示
JSplitPane 。
public AccessibleContext getAccessibleContext()
getAccessibleContext在接口
Accessible
getAccessibleContext在
Component类
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.