SetSysColors (coredll)
Last changed: JP-212.51.10.12

.
Summary
TODO - a short description

C# Signature:

[DllImport("coredll.dll")]

static extern int SetSysColors(int cElements, Int32[] lpaElements, Int32[] lpaRgbValues);

VB Signature:

<DllImport("Coredll.dll")> _

Public Shared Function SetSysColors(ByVal cElements As Integer, ByRef lpaElements As Integer(), ByRef lpaRgbValues As Integer()) As Integer

End Function

User-Defined Types:

None.

Alternative Managed API:

GetSysColors

Notes:

Windows CE.Net 4.20 not Support.(?)

Always return 1.

Tips & Tricks:

Please add some!

Sample Code:

C# Sample:

public class cSystemColors

    {
    /// <summary>
    /// SetSysColors: Importierte Methode aus der CoreDll.dll
    /// Registry Order System color Description
    /// 0 COLOR_SCROLLBAR Color of the gray area of a scroll bar.
    /// 1 COLOR_BACKGROUND Background color of the desktop window.
    /// 2 COLOR_ACTIVECAPTION Color of the title bar of an active window.
    /// 3 COLOR_INACTIVECAPTION Color of the title bar of an inactive window.
    /// 4 COLOR_MENU Background color of a menu.
    /// 5 COLOR_WINDOW Background color of a window.
    /// 6 COLOR_WINDOWFRAME Color of a window frame.
    /// 7 COLOR_MENUTEXT Color of the text in a menu.
    /// 8 COLOR_WINDOWTEXT Color of the text in a window.
    /// 9 COLOR_CAPTIONTEXT Color of the text in a title bar and of the size box and scroll bar arrow box.
    /// 10 COLOR_ACTIVEBORDER Color of the border of an active window.
    /// 11 COLOR_INACTIVEBORDER Color of the border of an inactive window.
    /// 12 COLOR_APPWORKSPACE Background color of multiple document interface (MDI) applications.
    /// 13 COLOR_HIGHLIGHT Color of an item selected in a control.
    /// 14 COLOR_HIGHLIGHTTEXT Color of the text of an item selected in a control.
    /// 15 COLOR_BTNFACE Color of the face of a button.
    /// 16 COLOR_BTNSHADOW Shadow color of buttons for edges that face away from the light source.
    /// 17 COLOR_GRAYTEXT Color of shaded text. This color is set to 0 if the current display driver does not support a solid gray color.
    /// 18 COLOR_BTNTEXT Color of the text for push buttons.
    /// 19 COLOR_INACTIVECAPTIONTEXT Color of the text in the title bar of an inactive window.
    /// 20 COLOR_BTNHIGHLIGHT Highlight color of buttons for edges that face the light source.
    /// 21 COLOR_3DDKSHADOW Color of the dark shadow for three-dimensional display elements.
    /// 22 COLOR_3DLIGHT Highlight color of three-dimensional display elements for edges that face the light source.
    /// 23 COLOR_INFOTEXT Color of the text for ToolTip controls.
    /// 24 COLOR_INFOBK Background color for ToolTip controls.
    /// 25 COLOR_STATIC Background color for static controls and dialog boxes. Supported in Windows CE 2.0 and later.
    /// 26 COLOR_STATICTEXT Color of the text for static controls. Supported in Windows CE 2.0 and later.
    /// 27 COLOR_GRADIENTACTIVECAPTION Color of the title bar of an active window that is filled with a color gradient.
    /// 28 COLOR_GRADIENTINACTIVECAPTION Color of the title bar of an inactive window that is filled with a color gradient.
    /// </summary>
    /// <param name="cElements"></param>
    /// <param name="lpaElements"></param>
    /// <param name="lpaRgbValues"></param>
    /// <returns></returns>

    [DllImport("coredll.dll", SetLastError = true)]
    private static extern bool SetSysColors(int cElements, Int32[] lpaElements, Int32[] lpaRgbValues);

    private const int SYS_COLOR_INDEX_FLAG = 0x40000000;

    public const int COLOR_SCROLLBAR = (0 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_BACKGROUND = (1 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_ACTIVECAPTION = (2 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_INACTIVECAPTION = (3 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_MENU = (4 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_WINDOW = (5 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_WINDOWFRAME = (6 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_MENUTEXT = (7 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_WINDOWTEXT = (8 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_CAPTIONTEXT = (9 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_ACTIVEBORDER = (10 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_INACTIVEBORDER = (11 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_APPWORKSPACE = (12 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_HIGHLIGHT = (13 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_HIGHLIGHTTEXT = (14 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_BTNFACE = (15 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_BTNSHADOW = (16 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_GRAYTEXT = (17 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_BTNTEXT = (18 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_INACTIVECAPTIONTEXT = (19 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_BTNHIGHLIGHT = (20 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_3DDKSHADOW = (21 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_3DLIGHT = (22 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_INFOTEXT = (23 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_INFOBK = (24 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_STATIC = (25 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_STATICTEXT = (26 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_GRADIENTACTIVECAPTION = (27 | SYS_COLOR_INDEX_FLAG);
    public const int COLOR_GRADIENTINACTIVECAPTION = (28 | SYS_COLOR_INDEX_FLAG);

    /// <summary>
    /// SetSystemColor
    /// </summary>

    public static void SetSystemColor()
    {

        int[] lpaElements =
             {
            COLOR_SCROLLBAR,            
            COLOR_BACKGROUND,            
            COLOR_ACTIVECAPTION,        
            COLOR_INACTIVECAPTION,        
            COLOR_MENU,            
            COLOR_WINDOW,            
            COLOR_WINDOWFRAME,            
            COLOR_MENUTEXT,            
            COLOR_WINDOWTEXT,            
            COLOR_CAPTIONTEXT,            
            COLOR_ACTIVEBORDER,        
            COLOR_INACTIVEBORDER,        
            COLOR_APPWORKSPACE,        
            COLOR_HIGHLIGHT,            
            COLOR_HIGHLIGHTTEXT,        
            COLOR_BTNFACE,            
            COLOR_BTNSHADOW,            
            COLOR_GRAYTEXT,            
            COLOR_BTNTEXT,            
            COLOR_INACTIVECAPTIONTEXT,        
            COLOR_BTNHIGHLIGHT,        
            COLOR_3DDKSHADOW,            
            COLOR_3DLIGHT,            
            COLOR_INFOTEXT,            
            COLOR_INFOBK,            
            COLOR_STATIC,            
            COLOR_STATICTEXT,            
            COLOR_GRADIENTACTIVECAPTION,    
            COLOR_GRADIENTINACTIVECAPTION    
              };

        int[] lpaRgbValues =
        {
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_SCROLLBAR
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_BACKGROUND
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_ACTIVECAPTION
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_INACTIVECAPTION
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_MENU
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_WINDOW
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_WINDOWFRAME
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_MENUTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_WINDOWTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_CAPTIONTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_ACTIVEBORDER
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_INACTIVEBORDER
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_APPWORKSPACE
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_HIGHLIGHT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_HIGHLIGHTTEXT
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_BTNFACE
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_BTNSHADOW
            Color.Turquoise.ToArgb() & 0x00ffffff,       //COLOR_GRAYTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_BTNTEXT
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_INACTIVECAPTIONTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_BTNHIGHLIGHT
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_3DDKSHADOW
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_3DLIGHT
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_INFOTEXT
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_INFOBK
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_STATIC
            Color.Green.ToArgb() & 0x00ffffff,           //COLOR_STATICTEXT
            Color.Transparent.ToArgb() & 0x00ffffff,     //COLOR_GRADIENTACTIVECAPTION
            Color.Transparent.ToArgb() & 0x00ffffff      //COLOR_GRADIENTINACTIVECAPTION
           };

        int iElements = lpaElements.Length;

        bool retVel = cSystemColors.SetSysColors(iElements, lpaElements, lpaRgbValues);

        if (retVel == false)
        {
        int error = Marshal.GetLastWin32Error();
        throw new Exception(string.Format("SetSysColors() returned {0}!", error));
        }
    }
    }

Documentation
Dokumentation