SftButton/DLL 3.0 - Button Control
SftTree/DLL 8.0 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 4.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 8.0 - Tree Control
SftButton/DLL 3.0 - Button Control
SftTree/DLL 8.0 - Tree Control
SftBox/OCX 5.0 - Combo Box Control
SftButton/OCX 4.0 - Button Control
SftMask/OCX 7.0 - Masked Edit Control
SftTabs/OCX 6.5 - Tab Control (VB6 only)
SftTree/OCX 8.0 - Tree Control
SftTree/NET 2.0 - Tree Control
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. SftMask/DLL 7.0 follows this rule automatically.
When Windows High Contrast is active, the masked edit control:
Custom RGB color values set by the application remain in effect - the control does not override application-chosen explicit colors. Applications should avoid hard-coding colors on controls that must respect the user's contrast theme, or switch to SFTMASK_NOCOLOR / system color values while high contrast is active.
The masked edit 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. |
| ON | Always 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 control. |
| OFF | Ignore 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. |
SFTMASKN_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; the read-only fHighContrastActive field of the SFTMASK_CONTROL structure reports the same state.
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.
See Also Dark Mode | Accessibility (Screen Readers) | SetHighContrastMode | IsHighContrastActive
