The default colors are driven by the values returned by the GetSysColor function in the Windows API. We’ll be using GetSysColor when creating custom controls later in the series.
I’ve included a form, frmGetColors.scx (the download link is at the end of this post), which shows all of the current GetSysColor values based on the current Windows color scheme (or theme).
The form (pictured below) includes some Windows Event Binding code (which I
stole leveraged from Tamar’s BINDEVENTS session), to automatically update the form when the Windows theme changes.
To use the GetSysColor function in Visual FoxPro, simply DECLARE the function, and then call it with one of the API Param numbers shown in the figure above:
DECLARE INTEGER GetSysColor IN WIN32API INTEGER nIndex ?GetSysColor(15) && 3DFACE (Buttons, forms)