[DllImport("user32.dll")]
public static extern bool DrawFrameControl(IntPtr hdc,ref RECT lprc, DFC_Type_flags uType, DFC_State_flags uState);
[Flags()]
public enum DFC_Type_flags : uint
{
DFC_CAPTION = 1,
DFC_MENU = 2,
DFC_SCROLL = 3,
DFC_BUTTON = 4,
DFC_POPUPMENU = 5
}
[Flags()]
public enum DFC_State_flags : uint
{
DFCS_CAPTIONCLOSE = 0x0000,
DFCS_CAPTIONMIN = 0x0001,
DFCS_CAPTIONMAX = 0x0002,
DFCS_CAPTIONRESTORE = 0x0003,
DFCS_CAPTIONHELP = 0x0004,
//
DFCS_BUTTONCHECK = 0x0000,
DFCS_BUTTONRADIOIMAGE = 0x0001,
DFCS_BUTTONRADIOMASK = 0x0002,
DFCS_BUTTONRADIO = 0x0004,
DFCS_BUTTON3STATE = 0x0008,
DFCS_BUTTONPUSH = 0x0010,
//
DFCS_MENUARROW = 0x0000,
DFCS_MENUCHECK = 0x0001,
DFCS_MENUBULLET = 0x0002,
DFCS_MENUARROWRIGHT = 0x0004,
//
DFCS_SCROLLUP = 0x0000,
DFCS_SCROLLDOWN = 0x0001,
DFCS_SCROLLLEFT = 0x0002,
DFCS_SCROLLRIGHT = 0x0003,
DFCS_SCROLLCOMBOBOX = 0x0005,
DFCS_SCROLLSIZEGRIP = 0x0008,
DFCS_SCROLLSIZEGRIPRIGHT = 0x0010,
//
DFCS_INACTIVE = 0x0100,
DFCS_PUSHED = 0x0200,
DFCS_CHECKED = 0x0400,
DFCS_TRANSPARENT = 0x0800,
DFCS_HOT = 0x1000,
DFCS_ADJUSTRECT = 0x2000,
DFCS_FLAT = 0x4000,
DFCS_MONO = 0x8000
}
Please add some!
// Note: Buttons use DFCS_PUSHED, but scrollbar arrowbuttons use DFCS_FLAT when pressed. -- n.j.r.
DrawFrameControl(hdc, ref rc, (uint)DFC.DFC_SCROLL, (uint)(DFCS.DFCS_FLAT | DFCS.DFCS_SCROLLLEFT));
Do you know one? Please contribute it!