2013-01-22 14 views
11

C'è un modo per rilevare quando un divisore JSplitPane viene spostato? C'è un modo per aggiungere un ascoltatore per il movimento del divisore?Rilevamento movimento divisore 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? 

risposta

21

Penso che tu sia alla ricerca di addPropertyChangeListener da Container. Qualcosa di simile ...

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

Usa

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

meglio usare il 'DIVIDER_LOCATION_PROPERTY' costante invece della stringa stessa –

Problemi correlati