The Glimmerman
6th September 2006 07:26 UTC
Background Color (MUI + IOEx) of Installer
Hey all,
I figured it out how to change the bgcolor of the installer.
Including the controls. :)
But there is one thing I cannot get to work.
I've got 2 custom pages. In the First I change the color including the section where the buttons are.
InstallOptionsEx::initDialog /NOUNLOAD "$TEMP\First.ini"
FindWindow $R1 "#32770" ""
Pop $R1
SetCtlColors $R1 0x000000 0x919CA0
SetCtlColors $HWNDPARENT 0x000000 0x919CA0
InstallOptionsEx::Show
After leaving the first custompage it loads the second page.
But with different colors. I want it to load the default colors.
InstallOptionsEx::initDialog /NOUNLOAD "$TEMP\Second.ini"
FindWindow $R1 "#32770" ""
Pop $R1
SetCtlColors $R1 0x000000 0xD4D0C8
SetCtlColors $HWNDPARENT 0x000000 0xD4D0C8
InstallOptionsEx::Show
But this doesn't work. Can it be done? Or am I looking in the wrong direction.
Glimmerman
The Glimmerman
7th September 2006 01:17 UTC
nobody. :(
kichik
8th September 2006 16:58 UTC
If you want the custom page to use the default colors, simply don't change its colors. If you're talking about $HWNDPARENT getting back the default Windows color, you could use the /BRANDING switch with no other parameters. It should set the default gray color.
The Glimmerman
11th September 2006 11:34 UTC
@kichik
If I use the /BRANDING option.
Like this:
SetCtlColors $HWNDPARENT /BRANDING
(Or any other var used in FindWindow.)
It uses the colors I used in my first custom page.
And it does not change to the default grey color.
A bug maybe? Or My error.
kichik
15th September 2006 09:04 UTC
The branding color is the default gray color of Windows. If that's not the default color you're looking for, I don't know which default color you refer to.
The Glimmerman
15th September 2006 15:17 UTC
I know what you mean.
Thats the color I want.
But my first custom page is this color (0x919CA0)
The whole page.
My second custom page right after clicking the next button.
Thats the page I want grey (default color).
But when I use branding I takes the color I use above ( My first custom page color) and not the default grey color I want.
kichik
15th September 2006 17:12 UTC
I can't see how this could happen. Attach your script, it might shed some light.
The Glimmerman
18th September 2006 07:03 UTC
Here's my script. The part that doesn't work.
If you want I can pm the whole script to you.
thx
kichik
22nd September 2006 12:08 UTC
Well, /BRANDING won't help here because it's transparent and the color "behind" the dialog is still the old color until you move the window.
Since SetCtlColors doesn't accept variables, you can't call GetSysColor yourself and set that color as the background. You can, however, add another label to the main dialog. You can then set a color to that label and hide it using ShowWindow when you want the original color.
The Glimmerman
25th September 2006 11:14 UTC
mmm I will try this out.
Thx kichik