SOLUTION: White background on menu items

B

Ben Amada

I've seen others report this somewhat rare problem and found a solution that
finally worked after everything else failed to solve the problem.

The problem is when the text of menu items (File, Edit, Format, View, Help,
etc.), in certain programs such as Notepad, starts displaying with a white
outline. Clicking on the menu item makes it even worst as the entire square
area around the menu item will turn completely white -- except for the
letters of the menu items which remain black. In my case, this started
occurring after installing a 3rd party application that made this undesired
modification to my settings.

The fix I discovered requires a very simple registry change which SHOULD be
harmless, although I can't guarantee there will be no negative side effects.
Additionally, to be on the safe side, I would suggest only making this
change if other suggestions you find don't work.

The registry key needing to be changed is UserPreferencesMask in the
following registry location:

HKCU\Control Panel\Desktop

Probably, the best value you can replace your current UserPreferencesMask
value with is to look at the "default" user setting, copy it down and
replace the UserPreferencesMask value under HKCU with that value. The
"default" UserPreferencesMask setting can be found under:

HKEY_USERS\.DEFAULT\Control Panel\Desktop

Copy that value down on paper, go back to HKCU\Control Panel\Desktop and
change the UserPreferencesMask to the value you copied down. Then, either
log off or reboot and upon logging in again, the problem should be fixed.

Regards,
Ben
 
R

Ramesh, MS-MVP

See also, for another method.

Fix the ugly menu bar after applying a custom theme:
http://windowsxp.mvps.org/uglymenubar.htm

--
Regards,

Ramesh Srinivasan, Microsoft MVP [Windows XP Shell/User]
Windows® XP Troubleshooting http://www.winhelponline.com


I've seen others report this somewhat rare problem and found a solution that
finally worked after everything else failed to solve the problem.

The problem is when the text of menu items (File, Edit, Format, View, Help,
etc.), in certain programs such as Notepad, starts displaying with a white
outline. Clicking on the menu item makes it even worst as the entire square
area around the menu item will turn completely white -- except for the
letters of the menu items which remain black. In my case, this started
occurring after installing a 3rd party application that made this undesired
modification to my settings.

The fix I discovered requires a very simple registry change which SHOULD be
harmless, although I can't guarantee there will be no negative side effects.
Additionally, to be on the safe side, I would suggest only making this
change if other suggestions you find don't work.

The registry key needing to be changed is UserPreferencesMask in the
following registry location:

HKCU\Control Panel\Desktop

Probably, the best value you can replace your current UserPreferencesMask
value with is to look at the "default" user setting, copy it down and
replace the UserPreferencesMask value under HKCU with that value. The
"default" UserPreferencesMask setting can be found under:

HKEY_USERS\.DEFAULT\Control Panel\Desktop

Copy that value down on paper, go back to HKCU\Control Panel\Desktop and
change the UserPreferencesMask to the value you copied down. Then, either
log off or reboot and upon logging in again, the problem should be fixed.

Regards,
Ben
 
K

Keith Miller MVP

I've always offered up the following script when anyone posts with this problem:

----------------------------
'Toggle the Flat Menus bit

Set WSHShell = WScript.CreateObject("WScript.Shell")
Upm = "HKCU\Control Panel\Desktop\UserPreferencesMask"

dim MenuState

MenuState = Array ("Off", "On")

MaskBytes = WSHShell.RegRead (Upm)

FlatMenuOn = (MaskBytes(2) and &H02) \ 2

Message2 = "Flat Menus are currently turned " & MenuState(FlatMenuOn) & "." & vbCR &vbCR
Message2 = Message2 & "Running this script will turn them " & MenuState(Abs((FlatMenuOn - 1))) & "."
& vbCR & vbCR
Message2 = Message2 & "('On' is the 'correct' setting for XP style display)" & vbCR & vbCR
Message2 = Message2 & "Continue?"

X = MsgBox(Message2, vbYesNo, "Toggle Flat-Menu Setting")

If X = 6 Then

MaskBytes(2) = CByte(MaskBytes(2) Xor &H02)

MaskStr = ""
for each MaskByte in MaskBytes
strByte = right( "00" & hex(MaskByte), 2 )
MaskStr = strByte & MaskStr
next

WSHShell.RegWrite Upm, CLng("&H" & MaskStr), "REG_BINARY"

MsgBox "You must logoff/logon for changes to take effect." & vbcr & vbcr, 4096, "Action Completed"

Else

MsgBox "No changes were made to your system." & vbcr & vbcr, 4096, "Action Cancelled"

End If
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top