Java 限制JSplitPane分隔器的移动
我正在寻找一种方法来限制分隔器移动超过左手边的某个宽度。例如,我可以使用setDividerLocation(400),然后添加另一个width=500的属性,这样Swing GUI的用户可以移动分隔符,直到只有width=500 我正在查看Java 限制JSplitPane分隔器的移动,java,swing,jsplitpane,Java,Swing,Jsplitpane,我正在寻找一种方法来限制分隔器移动超过左手边的某个宽度。例如,我可以使用setDividerLocation(400),然后添加另一个width=500的属性,这样Swing GUI的用户可以移动分隔符,直到只有width=500 我正在查看setLastDividerLocation,但是,这似乎不起作用。有人能帮我设置正确的属性吗 谢谢 您可以在JSplitPane中添加PropertyChangeListener,并在超出限制时重置分隔器位置: splitPane.addPropertyC
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 );
}
}
});