import javax.swing.JScrollBar; import javax.swing.plaf.ScrollBarUI; /** * DoubleHeadedScrollbar is a scrollbar with one additional feature: * you can resize the thumb using draggable buttons at each end of it. * For simplicity, this DoubleHeadedScrollbar can only be horizontal * (those this can easily be fixed with a little more coding). */ public class DoubleHeadedScrollbar extends JScrollBar { /** * Make a horizontal DoubleHeadedScrollbar. * @param value initial value * @param extent size of visible area (thumb size) * @param min minimum value * @param max maximum value */ public DoubleHeadedScrollbar(int value, int extent, int min, int max) { super(HORIZONTAL, value, extent, min, max); } // override setUI() to always use our own look-and-feel. public void setUI(ScrollBarUI ui) { super.setUI(new DoubleHeadedScrollbarUI()); } }