I am creating a music player program.
I have created the seek bar using JSlider
Code:
JSlider seek = new JSlider(JProgressBar.HORIZONTAL);
seek.setOpaque(true);
seek.setMajorTickSpacing(0);
seek.setMinorTickSpacing(0);
seek.setBackground(Color.DARK_GRAY);
seek.setSize(100, 13);
seek.setLocation(6, 30);
Currently, it looks like this :
I can only change the background of JSlider using setBackground() method.
I don't have any idea about how to change the thumb colour, thumb shape, track colour, etc.
I want my seek bar to look something like this :
How can I achieve this?
If not possible with JSlider, is it possible to create a JProgressBar which has a slidable thumb?


As was already mentioned in the comments there is no way for you to change the appearance of the slider without extending an existing implementation of
SliderUI. Here is an example implementation of how one could achieve the visuals from your demo picture.Note that hard coding the sizes and colours isn't the best approach and for a real implementation should be handled by setting and using values available by the
UIManager.Result: