HeaderPane
Main
Hide

SftButton/DLL 3.0 - Button Control

Share Link
Print

High Contrast

Windows High Contrast is an accessibility setting, not a visual preference. Users who enable it have committed to a specific high-contrast color scheme for everything on screen, and Microsoft's accessibility guidelines require applications to let the user's scheme win over any application-chosen colors. SftButton/DLL 3.0 follows this rule automatically.

When Windows High Contrast is active, the button control:

  • renders backgrounds in COLOR_WINDOW (or COLOR_3DFACE for pressed state), text in COLOR_WINDOWTEXT, focus ring in COLOR_HIGHLIGHT, and borders in COLOR_BTNSHADOW / COLOR_BTNHIGHLIGHT,
  • ignores caller-supplied color overrides (per-state background, gradient start/end, text color, border color) on the default render path - the user's contrast theme wins,
  • suppresses Windows themes. The button background and border fall back to a non-themed GDI path that honors system colors directly.

The button control's high contrast setting has three values (see SetHighContrastMode):

AUTO (default)Follow the Windows High Contrast setting. The control re-renders when the setting flips.
ONAlways use the system palette, regardless of the Windows High Contrast setting. Useful for testing or for applications that want consistent high-contrast rendering for a specific button.
OFFIgnore the Windows High Contrast setting and render normally. Not recommended in shipping applications - it means users with accessibility needs will see rendering that does not comply with their contrast theme.

SFTBUTTONN_HIGHCONTRAST_CHANGED is sent to the parent window each time the active state flips (AUTO mode only) so the application can repaint its own chrome to match. IsHighContrastActive reports the current state at any time.

Dark mode and Windows High Contrast are independent. If the user has both enabled, high contrast takes precedence - the contrast theme's palette wins over the dark palette, because honoring the user's contrast theme is the stronger accessibility requirement.


Last Updated 04/26/2026 - (email)
© 2026 Softel vdm, Inc.