A [Ttk] (i.e. theme-able) [scrollbar] [widget]. : '''[ttk]::scrollbar''' ''pathName'' ?''options…''? : http://www.tcl.tk/man/tcl/TkCmd/ttk_scrollbar.htm **Layout names** [HaO] 2019-04-29: The class name is tricky. The pure name '''TScrollbar''' may be used to modify the original style: ======tcl ttk::style configure TScrollbar -relief raised ====== Nevertheless, for any other purpose,the name '''Horizontal.TScrollbar''' or '''Vertical.TScrollbar''' is used. To diplay the layout of the widget: ======tcl % ttk::style layout Vertical.TScrollbar Vertical.Scrollbar.trough -sticky ns -children { Vertical.Scrollbar.uparrow -side top -sticky {} Vertical.Scrollbar.downarrow -side bottom -sticky {} Vertical.Scrollbar.thumb -sticky nswe -unit 1 -children { Vertical.Scrollbar.grip -sticky {}}} ====== A custom stlye may be defined as follows: ======tcl ttk::style configure My.Vertical.TScrollbar -troughcolor yellow pack [ttk::scrollbar .s -style My.Vertical.TScrollbar -orient vertical -command ".t yview"]\ -fill y -expand true -side right pack [text .t -yscrollcommand ".s set"]\ -side left -fill both -expand true .t insert 1.0 [string repeat 1\n 100] ====== The following styling options are supported: The description is for a vertical slider. There are 5 regions named here: upper arrow, upper trough, thumb, lower trough, lower arrow. %| option | Description | Present in styles (incomplete)|% &| -arrowcolor | arrow background color | clam |& &| -arrowsize | arrows width and height and thus width of the widget | alt, clam, default, native, classic |& &| -background | ? | clam |& &| -bordercolor | ? | clam |& &| -borderwidth | ? | classic, default |& &| -darkcolor | color of the frames of each element | clam |& &| -gripcount | number of vertical lines on the thumb | clam |& &| -groovewidth | ? | alt, vista, winnative, xpnative |& &| -lightcolor | ? | clam |& &| -orient | probably automatic, should not be changed | all |& &| -sliderlength | No visual effect | clam, default |& &| -troughcolor | trough color | alt, clam, classic, default, vista, winnative, xpnative |& &| -troughborderwidth | trough width | alt, vista, winnative, xpnative |& &| -troughrelief | trough relief | alt, classic, default, vista, winnative, xpnative |& The styling options may be listed by : ======tcl % foreach styleCur [ttk::style theme names] { > ttk::style theme use $styleCur > puts "$styleCur: [lsort [ttk::style element options Vertical.TScrollbar.trough]]" > } winnative: -groovewidth -orient -troughborderwidth -troughcolor -troughrelief clam: -arrowcolor -arrowsize -background -bordercolor -darkcolor -gripcount -lightcolor -orient -sliderlength -troughcolor alt: -groovewidth -orient -troughborderwidth -troughcolor -troughrelief default: -borderwidth -troughcolor -troughrelief classic: -borderwidth -troughcolor -troughrelief vista: -groovewidth -orient -troughborderwidth -troughcolor -troughrelief xpnative: -groovewidth -orient -troughborderwidth -troughcolor -troughrelief ====== Anybody may complete the upper table... <> Widget