


(Like dis.CtlId=IDOK (1
case WM_DRAWITEM
(Dim dis As DRAWITEMSTRUCT (lParam
Dim rc As RECT
get the size of the button'
GetClientRect dis.hwndItem,rc
' set text background to match button’s background'
(SetBkColor dis.hDC,RGB(255,0,0
(SetTextColor dis.hDC,RGB(255,255,255
DrawText
(dis.hDC,"BTN",Len("BTN")-1,rc,DT_CENTER+DT_VCENTER+DT_SINGLELINE
BTNProc=TRUE
case WM_CTLCOLORBTN
Dim rc As RECT
Dim brush As Long
(background_color = RGB(255,0,0
hdc=wParam
button_handle=lParam
(GetClientRect button_handle,rc
SetBkColor hdc,background_color
(SetTextColor hdc,RGB(255,255,255
(DrawText(hdc,"BTN",Len("BTN")-1,rc,DT_CENTER+DT_VCENTER+DT_SINGLELINE
(brush = CreateSolidBrush(background_color
BTNProc=brush
Static / Edit Window
case WM_CTLCOLORSTATIC
hdcStatic=wParam
(SetTextColor hdcStatic,RGB(0,0,255
(SetBkColor hdcStatic,RGB(250,250,0
(return=CreateSolidBrush(RGB(250,250,0
case WM_CTLCOLOREDIT
hdcStatic=wParam
(SetTextColor hdcStatic,RGB(0,0,255
(SetBkColor hdcStatic,RGB(0,230,0
((return=CreateSolidBrush(RGB(0,230,0
CColorButton:DrawFilledRect(CDC *DC, CRect R, (COLORREF color
( B=CreateSolidBrush(color
FillRect Dc,R, B
CColorButton:DrawLine(CDC *DC, CRect EndPoints,(COLORREF color,
( newPen=CreatePen(PS_SOLID, 1, color
( oldPen=SelectObject(DC,newPen
( MoveTo DC,EndPoints.left,EndPoints.top
(LineTo DC,EndPoints.right,EndPoints.bottom
SelectObject DC,oldPen
Pen.DeleteObject newPen
(CRect:ControlRect (ButtonRect<<<<<---
CColorButton:DrawButtonText(CDC *DC, CRect R(const char *Buf, COLORREF TextColor,
(prevColor=SetTextColor(DC,TextColor
SetBkMode DC,TRANSPARENT
DrawText DC,Buf,len(Buf),R,DT_CENTER+DT_VCENTER+DT_SINGLELINE
SetTextColor DC,prevColor