You can add a ComponentListener to your slider that repaints it on componentResized
.
slider.addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
e.getComponent().repaint();
}
}