0

我正在尝试实现一个将其状态保存到某个配置文件的 JSplitPane,所以我添加了一个像这样的侦听器:

mHorSplitPane.addPropertyChangeListener(new PropertyChangeListener() {
            public void propertyChange(PropertyChangeEvent changeEvent) {
                JSplitPane sourceSplitPane = (JSplitPane) changeEvent.getSource();
                String propertyName = changeEvent.getPropertyName();
                if (propertyName.equals(JSplitPane.DIVIDER_LOCATION_PROPERTY)) {
                    mController.writeSplitPaneProperty((int) (sourceSplitPane.getDividerLocation()/(float)sourceSplitPane.getBounds().width*100));

                }
            }
        });

它可以很好地处理它,但是由于某种原因,有时 Swing 代码本身会更改此属性并更改分隔符位置,关于如何克服这个问题的任何建议?

4

0 回答 0