Make vertical scroll bar darker
-
Maybe my eyes are starting to fail me, but sometimes the vertical scroll bar indicator in the vertical scroll bar is just so hard to see - the colors aren’t contrast-y enough. A quick look through custom themes and maybe it’s due to the background colors of some themes, but it does look a little better. But I can’t seem to find the vertical scroll bar “color” in themes. It may not be configurable.
- Can the vertical scroll bar color be changed? If not …
- Can a Python Script do it?
Cheers.
-
- Not that I’m aware
- Maybe, that’s what I currently investigate. By indicator you mean the thumb, right?
-
vertical scroll bar indicator in the vertical scroll bar is just so hard to see - the colors aren’t contrast-y
My “thumb” in Win10 already has “good” (I won’t go so far as to say “great”) contrast; maybe post a pic of yours?
-
Yes, that’s it, what you’re calling the “thumb”.
On my $work computer - image site is blocked. However the pic you posted is pretty much exactly what I see - to me there’s very little contrast on that and I can barely see it. I can see @Ekopalypse much better.
Cheers.
-
It seems to be the only way to create some sort of overlay,
from what I understand, because the Windows message WM_CTLCOLORSCROLLBAR
is not sent in our case.
In my opinion, this would mean that, via the respective
Scintilla window procedure, one must act on WM_PAINT, as described here in an example,
and a new, darker(?) thumb must be painted over the original thumb.
How performant this is … ?? -
@Michael-Vincent said in Make vertical scroll bar darker:
On my $work computer - image site is blocked
If you copy an image to the clipboard and then try to Ctrl+v it into your posting here – it’s blocked??
That seems really odd; I thought my work company was militant but yours takes it to a new level. :-)How performant this is … ??
We won’t know until we see your demo of it. :-)
-
By the way, I doubled checked that scintilla does not receive the MW_CTL… message.
Here what I received during testing (the number after the message are the wpara and lparam values)
WM_KEYUP 116 3225354241 WM_NCHITTEST 0 14222968 WM_SETCURSOR 66926 33554450 WM_NCMOUSEMOVE 18 14222968 WM_NCHITTEST 0 14157432 WM_SETCURSOR 66926 33554450 WM_NCMOUSEMOVE 18 14157432 WM_NCHITTEST 0 14091895 WM_SETCURSOR 66926 33554450 WM_NCMOUSEMOVE 18 14091895 WM_NCHITTEST 0 14091894 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 14091894 WM_NCHITTEST 0 14026358 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 14026358 WM_NCHITTEST 0 13960821 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13960821 WM_NCHITTEST 0 13895284 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13895284 WM_NCHITTEST 0 13829748 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13829748 WM_NCHITTEST 0 13764211 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13764211 WM_NCHITTEST 0 13698675 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13698675 WM_NCHITTEST 0 13698674 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13698674 WM_NCHITTEST 0 13633138 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13633138 WM_NCHITTEST 0 13567601 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13567601 WM_NCHITTEST 0 13502065 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13502065 WM_NCHITTEST 0 13436529 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13436529 WM_NCHITTEST 0 13436528 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13436528 WM_NCHITTEST 0 13370992 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13370992 WM_NCHITTEST 0 13305455 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 13305455 WM_TIMER 3 0 WM_PAINT 0 0 WM_TIMER 3 0 WM_PAINT 0 0 WM_NCHITTEST 0 13305455 WM_MOUSEACTIVATE 197042 33619975 WM_SETCURSOR 66926 33619975 WM_NCLBUTTONDOWN 7 13305455 WM_SYSCOMMAND 61575 13305455 WM_VSCROLL 5 0 WM_CAPTURECHANGED 0 66926 WM_TIMER 3 0 WM_NCMOUSELEAVE 0 0 WM_PAINT 0 0 WM_VSCROLL 65541 0 WM_PAINT 0 0 WM_VSCROLL 131077 0 WM_PAINT 0 0 WM_VSCROLL 196613 0 WM_PAINT 0 0 WM_VSCROLL 262149 0 WM_PAINT 0 0 WM_VSCROLL 327685 0 WM_PAINT 0 0 WM_VSCROLL 393221 0 WM_PAINT 0 0 WM_TIMER 3 0 WM_PAINT 0 0 WM_CAPTURECHANGED 0 0 WM_VSCROLL 393220 0 WM_VSCROLL 8 0 WM_NCHITTEST 0 15402613 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 15402613 WM_NCHITTEST 0 15468149 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 15468149 WM_NCHITTEST 0 15599219 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 15599219 WM_NCHITTEST 0 15730289 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 15730289 WM_NCHITTEST 0 15861358 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 15861358 WM_NCHITTEST 0 16057963 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 16057963 WM_NCHITTEST 0 16320103 WM_SETCURSOR 66926 33554439 WM_NCMOUSEMOVE 7 16320103 WM_NCHITTEST 0 16582242 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 5899430 WM_NCMOUSELEAVE 0 0 WM_NCHITTEST 0 16975450 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 6292638 WM_NCHITTEST 0 17237589 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 6554777 WM_NCHITTEST 0 17696334 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 7013522 WM_NCHITTEST 0 18089543 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 7406731 WM_NCHITTEST 0 18613821 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 7931009 WM_NCHITTEST 0 19138098 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 8455286 WM_NCHITTEST 0 19793445 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 9110633 WM_NCHITTEST 0 20448791 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 9765979 WM_NCHITTEST 0 21366274 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 10683462 WM_NCHITTEST 0 22152688 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 11469876 WM_NCHITTEST 0 23004636 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 12321824 WM_NCHITTEST 0 24053188 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 13370376 WM_NCHITTEST 0 25101742 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 14418930 WM_NCHITTEST 0 26150295 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 15467483 WM_NCHITTEST 0 27329917 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 16647105 WM_NCHITTEST 0 28312937 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 17630125 WM_NCHITTEST 0 29492560 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 18809748 WM_NCHITTEST 0 30475580 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 19792768 WM_NCHITTEST 0 31589670 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 20906858 WM_NCHITTEST 0 32638226 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 21955414 WM_NCHITTEST 0 33883388 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 23200576 WM_NCHITTEST 0 34931943 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 24249131 WM_NCHITTEST 0 35914965 WM_SETCURSOR 66926 33554433 WM_MOUSEFIRST, WM_MOUSEMOVE 0 25232153 WM_MOUSELEAVE 0 0
-
@Alan-Kilborn said in Make vertical scroll bar darker:
We won’t know until we see your demo of it. :-)
LOL
I haven’t finished PySnack or ThemeBuilder yet and now you ask for a demo for it? :-DI will probably try it sometime today :-D
-
Sometimes the “small” ones are a nice diversion when the “bigger” ones get bogged down.
Accomplishing a “small” one reinvigorates you for the others. :-) -
@Alan-Kilborn said in Make vertical scroll bar darker:
If you copy an image to the clipboard and then try to Ctrl+v it into your posting here
Sorry, you’re right, didn’t know we could post photos directly in here, thought we had to link to that imgur site (which is blocked for me).
I can see the one on the right much clearer. Note, that’s with my mouse clicking on the “thumb” to scroll / move it - it highlights darker when it’s clicked on.
@Ekopalypse @Alan-Kilborn
Please don’t waste any time on this unless it truly intrigues you. This was just a question to see if I was missing something in Style Configuration or Themes. If we need to hook Windows events that aren’t currently passed, then it’s going way beyond how “easy” it could be and I can live with it.Cheers.
-
@Michael-Vincent said in Make vertical scroll bar darker:
Yes, I see your complaint about lack of contrast. And yes, my thumb also gets way darker when I’m using it.
didn’t know we could post photos directly in here, thought we had to link to that imgur site (which is blocked for me).
Our “recent” upgrading of the forum software changed this. Sooooo much easier to just paste!
I can’t believe the amount of effort I went to before, to go to imgur, paste it there, create a link, blah blah blahdon’t waste any time on this unless it truly intrigues you
Oh, it intrigues @Ekopalypse , I have no doubt.
-
@Alan-Kilborn said in Make vertical scroll bar darker:
Oh, it intrigues @Ekopalypse , I have no doubt.
In the not too distant future, the Duden will have to adopt a new synonym for the word curious - namely Ekopalypse :-)
-
Seems I can’t see, again, the wood for the trees.
According to MSDN there is the function GetScrollBarInfo,
which provides information about the scrollbar.e.g. these values
cbSize : 60 rcScrollBar left : 1429 top : 174 right : 1446 bottom : 702 dxyLineButton : 17 xyThumbTop : 342 xyThumbBottom : 423 reserved : 0 rgstate : [0, 0, 0, 0, 0, 0]
The fields of interest are rcScrollBar and
dxyLineButton, xyThumbTop, and xyThumbBottom.The thing that confuses me now is the fact,
that these values are only conditionally compatible
with the values provided by UISpy.rcScrollBar is ok, from UISpy I get (1429, 174, 17, 528) = (left, top, right-left, bottom-top)
but for the thump I get from UISpy (1429, 516, 17, 81)
Where does the 516, the top value actually come from?
1429 = left
17 = dxyLineButton
81 = xyThumbBottom-xyThumbTop=423-342
516 = ?? (actually top but it is supposedly 342)What didn’t I understand?
-
Oh, I see - the thumb coordinates are relative to the scrollbar coordinates.
-
Ok, so I’ve tried it and I couldn’t make it work.
From msdn I understand that painting should take place
within WM_PAINT and start with BeginPaint and end with EndPaint.
That’s what I did and I can see the changes for a very short time then
it disappears again.
Then I tried approaches with BitBlt or StretchBlt but failed again.
Now I’m not sure if it can be done but I get the feeling that it shouldn’t be done, unless the window gets created with real scrollbars. -
@Ekopalypse said in Make vertical scroll bar darker:
Ok, so I’ve tried it and I couldn’t make it work.
Wow, thanks for all that work - I hope you found it interesting at least. No worries on my part, I figured it was something obvious I was missing or going to be something very hard. Turned out to be the latter, so I can live with it.
Thanks again!
Cheers.
-
I hope you found it interesting at least
That’s for sure. To be honest I wasn’t fully aware that there are two,
even three types, of scrollbars. The one, which I call real scrollbars,
the one which do get automatically added to a window when this has
been created using WS_HSCROLL or WS_WSCROLL style and userdefined
ones. And that all of them have certain different abilities and need to be treated differently.
So yes, it was fun :-) -
Hello ,@Michael-Vincent
Please try this information,To Make vertical scroll bar darker
Control Panel
Display
Appearance
Advanced
Item: 3D Objects Color 1: <-darker colour->
Item: Scrollbar Size: <-larger size->I hope this information will be usefull for you.
Thank You.