I've seen a few people asking for the ability to have variable scrollbar widths in the Flash CS3 component set. Unfortunately, it wasn't something we were able to get in for the release, but since then I have put a bit of time into the feature, and believe I have it working satisfactorily with all components. I added two styles: scrollBarWidth and scrollArrowHeight. The former controls the width of the scroll bar (or height in a horizontal scroll bar), the latter controls the height of its arrows (allowing you to have irregularly sized arrows).
It's important to note that this modification has not seen comprehensive testing, and it is not connected with Adobe in any way. Any mistakes are my own, and I'd appreciate if you can let me know about them in the comments.
Here's a simple demo showing the global scrollBarWidth and scrollArrowHeight set to 10, TileList's scrollArrowHeight set to 25 (to create rectangular arrows), and the top instance of a scrollBar component set to 25/25 (requires Flash Player 9):
You can download the code package by clicking here. To use, simply copy the fl directory into your project directory (or your project class path). The modified classes will override the component classes that shipped with CS3. Note that it may slightly increase your compile time, as these classes are not pre-compiled.
I'd appreciate knowing if this is useful for people, as I plan to release more updates and feature additions if this is well received.
Also, if anyone is curious, I'm waiting to hear from Adobe on what the official word in the EULA is regarding distributing component code like this. In the interim, I have received special permission to distribute some of my own updates - note that it may not be legal to do so if you do not have this permission. I will post about the details as soon as I have them.

Comments (30)
This looks great... sadly the link is broken.
Posted by: Dan at May 30, 2007 11:22 AMURL:
Thanks for letting me know. It's fixed now (darn case sensitive URLs).
Posted by: Grant Skinner at May 30, 2007 11:24 AMURL: http://gskinner.com/
It's great ! along with the scrollbar skinning it is extremely usefull.
Thank you,
Posted by: Maz at July 2, 2007 02:20 AMURL: http://www.bubble-mind.com
Nice. Should be official.
Posted by: Intoxopox at July 3, 2007 09:48 AMURL: http://professorfripples.com/blog
Hi,
Posted by: Yasha Rozov at August 15, 2007 05:48 AMis there anyway to use this with actionscript 2.0?
URL:
This is *very* useful. Thanks! I love the fact that the source is included in the CS3 components so you can modify if required.
Posted by: felix at August 30, 2007 05:26 PMURL: http://www.airtightinteractive.com
how about scrollThumbHeight?
Posted by: damo at October 14, 2007 12:38 AMURL:
damo,
Not so cool as using styles, but you can comment line 993:
//thumb.height = Math.max(13,_pageSize / per * track.height);
on updateThumb method to avoid thumb vertical resizing.
Posted by: Saulo at October 24, 2007 02:10 PMURL: http://www.weka.com.br
I've attached a scrollbar to a text field in my fla. Works fine when I publish it but when I upload the swf to my server it becomes invisible. It still works you just can't see it. Has anyone run into this?
Posted by: jwerre at March 26, 2008 04:18 PMURL:
Tnx man, it works great!
Posted by: cloetensbrecht at May 30, 2008 10:31 AMURL: http://www.cloetensbrecht.be
I noticed this update did not make it into an update for CS3 and is not in CS4. Any word on an update to the components.
Posted by: sean at January 21, 2009 11:12 AMURL:
sean - no, sorry. Adobe is the only one that can answer that question.
Posted by: Grant Skinner at January 21, 2009 11:28 AMURL: http://gskinner.com/blog/
Thank you for this! I've been searching and trying other solutions for hours with no success. Your fix works great! Thanks again.
Posted by: Eric at March 16, 2009 04:17 PMURL:
for some reason, i'm having a very hard time moving the code out of Flash and into Flex Builder. I'm getting some error with the TileList.
Posted by: mike connor at March 17, 2009 04:52 PMURL:
Great! Thanks so much, this was driving me insane! Now, how can we resize the checkbox component as well? :)
Posted by: Evan M at March 20, 2009 11:09 AMURL: http://www.bytestudios.com
Thank god for that!
Posted by: Jeff at March 23, 2009 11:19 PMI thought I was having some kind of brain meltdown, couldn't believe that there wasn't something buried in the original class definitions
URL:
Thanks you so much for theses classes, it's all i needed
Posted by: Nicolas at April 14, 2009 01:50 AMURL:
Excellent work sir..you rock! :)
Posted by: Gurpreet Hanjra at May 12, 2009 05:41 AMURL: http://urbanedezign.com
this is what i was looking for.....
Posted by: Hugo Fortis at May 21, 2009 07:01 PMthanks thanks a lot!!!!
but thanks ... and hiper thanks!!!!!
iiiiiuuuujjuuuu
i spend a week searching and trying to do it!!
ja ja ja ja ....
if i can help you someday, let me know, im, graphic Designer!!!
URL: http://www.stampadesign.com.mx
Fabulous... just trying this to see if it'll solve my issues with custom scrollbar buttons on a scrollpane... has anybody tested and proven this?
I've spent hours trying to find out how to do this in CS3!
Thanks Grant!
Posted by: Robert at May 27, 2009 12:51 PMURL: http://www.robertturrall.com/blogs
Excellent! Works a treat on ScrollPane ScrollBars - thanks Grant!
Come on Adobe - get this stuff in the product!
Posted by: Robert at May 27, 2009 12:57 PMURL: http://www.robertturrall.com/blogs
Grant, Folks like you are heroes! I spent an afternoon trying to work throught what is an Adobe bug. Thank Adobe, NOT!
Posted by: Jeff Green at June 14, 2009 05:28 PMURL:
hallelujah! I have been searching for HOURS trying to find a simple solution to resizing the scroll bars! I was just about to alter the original classes myself, but was not looking forward to it! Thanks so much.
Posted by: exoboy at June 16, 2009 03:58 PMURL: http://clarencebowman.com
Hello, Thannk you very much for this solution.
Posted by: Andreas Walz at June 25, 2009 09:27 AMI took me about 5 hours to find it. I could not believe that there is no 'regular' way to do it....
URL:
Wow thank you! This helped me out with a project at work big time! Works great!
Posted by: Nicolas Hansen at September 11, 2009 06:03 AMURL: http://subver.com
Oh man, also - is there a way to change the scrollbar Height? Not the entire track's height, just the bar..
Posted by: Nicolas Hansen at September 11, 2009 06:08 AMNot a huge deal if not, hopefully you get this comment soon enough, though.
Thanks man.
URL: http://subver.com
Hey there,
This is exactly what I needed for a project at work, what's the legality surrounding using this for a commercial project? Otherwise I'll have to code my own TileList.. And that'll just take time.
Cheers
Posted by: Joe at October 19, 2009 04:05 AMJoe
URL: http://www.joe-best.com
its nice! thanx
Posted by: saintist at October 30, 2009 03:33 PMURL: http://saintist.ru
I don't understand this:
To use, simply copy the fl directory into your project directory (or your project class path). The modified classes will override the component classes that shipped with CS3.
Can someone explain it to me like I'm 5?
Posted by: Karen at November 24, 2009 02:42 PMthanks,
URL:
This is great!
I spent hours trying to find open source components that gave me the control I was missing in Flash.
I wish there were more methods to modify the Flash default components.
It annoys me that I need to go to open source and Flex to create useful components.
Great job. Thanks.
Posted by: Daniel at February 26, 2010 01:15 PMURL: