我正在寻找一种方法来限制分隔符移动超过一定的宽度在左手边。例如,我可以使用setDividerLocation(400),然后添加另一个width = 500的属性,这样Swing GUI的用户就可以移动分隔符直到width = 500。
我正在看setLastDividerLocation
,然而,这似乎不起作用。有人能帮我正确的属性,我需要设置这个吗?
谢谢!
您可以在JSplitPane
上添加PropertyChangeListener
,并在超过限制时重置分压器位置:
splitPane.addPropertyChangeListener("dividerLocation", new PropertyChangeListener()
{
@Override
public void propertyChange(PropertyChangeEvent e)
{
int location = ((Integer)e.getNewValue()).intValue();
System.out.println(location);
if (location > 400)
{
JSplitPane splitPane = (JSplitPane)e.getSource();
splitPane.setDividerLocation( 400 );
}
}
});