Not Picky At All - Was: Really, really, really, nit-picky....
--0-1166887195-998505809=:50417
Hi Jonas:
Actually, just a few days ago I mentioned this very problem to the
list.
And it is a very SERIOUS problem for me. I have poor eyesight and need
to have dark background colors with light colored text on all
items/windows on my desktop.
Not only does win32lib not keep the default desktop colors for the
back-
ground. But it also forces all text to be BLACK in all of its windows
& controls. Try creating a window with a listbox or checkbox in it, &
try changing the text in any of them. It doesn't work.
I am currently deciding whether or not to dump Euphoria because of this
problem. If anyone has a solution for this EXTREMELY FRUSTRATING
problem. I would be eternally grateful.
Regards
Brian Keene
--- Jonas Temple <jktemple at yhti.net> wrote:
>
> Okay, no cause for alarm here...just found something in Win32lib that
> I
> would wager most of us have never tried (at least I never did). Has
> anyone ever tried to change the appearance of Windows desktop and use
> a
> Win32lib program? What I mean is right-clicking in the desktop,
> selecting the "Properties" item from the pop-up, selecting the
> "Appearance" tab and changing the "Desktop" item scheme to something
> other than Windows Standard and then running a program that uses
> Win32lib? Go ahead...try it...I'll wait...did you notice that your
> Win32lib program did not change the background color of labels,
> windows,
> checkboxes, etc.? Not really a big thing but it would be noticed by
> users wanting to change their desktop colors.
>
> To that end I humbly submit the following code:
>
> -- On a paint call check if the current button face color has changed
> -- and if so set all label controls and windows to the correct
> background color
> -- as well as the main window background color.
> atom cur_color
> cur_color = 0
>
> procedure MainWin_onPaint(atom x1, atom y1, atom x2, atom y2)
> object color
> color = getSysColor(COLOR_BTNFACE)
> if color != cur_color then
> cur_color = color
> -- Set all window controls background
> setWindowBackColor( MainWin, color )
> -- Set label background
> setWindowBackColor( CurProjLT, color )
> -- Set group control backgrounds
> setWindowBackColor( PrintTypeGroupGC, color )
> -- Set radio button backgrounds
> setWindowBackColor( PrintDetailRB, color )
>
> end if
> end procedure
> onPaint[MainWin] = routine_id("MainWin_onPaint")
>
>
>
>
>
|
Not Categorized, Please Help
|
|