2013-01-22 5 views
11

JSplitPane 구분선이 이동 한 시간을 감지하는 방법이 있습니까? 분배기 이동을위한 수신기를 추가하는 방법이 있습니까?JSplitPane 디바이더 이동 감지

JPanel panel1 = new JPanel(); 
JPanel panel2 = new JPanel(); 
JSplitPane sp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panel1, panel2); 
// What do I put here to be notified if the divider in sp is moved? 

답변

21

난 당신이 Container에서 addPropertyChangeListener을 찾고 생각합니다. 이런 식으로 뭔가 ...

sp.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, 
    new PropertyChangeListener() { 
     @Override 
     public void propertyChange(PropertyChangeEvent pce) {} 
}); 
5

사용

splitter.addPropertyChangeListener("dividerLocation", myListener); 
+3

더 나은 대신 문자열 자체의 상수'DIVIDER_LOCATION_PROPERTY'를 사용 –