A picture is worth a thousand words, so without further delay: [http://www.xmission.com/~georgeps/cscrollbar/cscrollbar-2.1.jpg] (Newer versions have 4 arrows (two for the top and the bottom)) License: BSD (Tcl style but copyrighted by GPS) Platforms: all supported by Tcl/Tk [GPS]: Cscrollbar has improved with age. I use it everyday in my editor, and other applications. Stepwise Refinement is what I followed with this (without knowing the specific term until afterwards :). It supports the Tk scrollbar protocol, so every standard Tk widget that supports scrolling can use it. The code is concise, and works well. There is a rough area in the drawing of some gradient colors, but now that I've written new code for [Drawing Gradients on a Canvas] I should fix this problem soon. It works well for many colors though as is. If you find a feature lacking let me know and I can help, or send me[mailto:GeorgePS@XMission] a patch.