import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.File; import javax.swing.JFileChooser; public class Main { public static void main(String[] argv) throws Exception { final JFileChooser chooser = new JFileChooser(); chooser.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (JFileChooser.DIRECTORY_CHANGED_PROPERTY.equals(evt.getPropertyName())) { JFileChooser chooser = (JFileChooser) evt.getSource(); File oldDir = (File) evt.getOldValue(); File newDir = (File) evt.getNewValue(); File curDir = chooser.getCurrentDirectory(); } } }); } }