Question

I want to get divider component in JSplitPane. I want to attach MouseListener to it.

How to get divider component of JSplitPane?

Thanks!

Was it helpful?

Solution 2

Try this -

Initially:

JSplitPane pane = new JSplitPane(JSPlitPane.HORIZONTAL_SPLIT, panelOne, panelTwo);
pane.addPropertyChangeListener(JSplitPane.DIVIDER_LOCATION_PROPERTY, new PropertyChangeListener() {
    @Override
    public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
        // some processing here
    }
});

Updated:

JSplitPane pane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panelOne, panelTwo);
BasicSplitPaneUI basicSplitPaneUI = (BasicSplitPaneUI) pane.getUI();
BasicSplitPaneDivider basicSplitPaneDivider = basicSplitPaneUI.getDivider();
basicSplitPaneDivider.addMouseMotionListener(new MouseMotionAdapter() {
    @Override
    public void mouseDragged(MouseEvent e) {
        // some processing here
    }
});

OTHER TIPS

I want to attach mouse listener to it.

Why do you need a MouseListener (there may be a better solution if we know the actual requirement)?

I want to get divider component in JSplitPane.

You get the divider from the UI:

BasicSplitPaneUI ui = (BasicSplitPaneUI)splitPane.getUI();
BasicSplitPaneDivider divider = ui.getDivider();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top