Con todo gusto Manuel y disculpa la tardanza. Estuve varios d铆as sin utilizar la red.
Con DrawFrameControl() puedes dibujar todos estos "objetos" de windows:
define DFC_CAPTION 1
define DFC_MENU 2
define DFC_SCROLL 3
define DFC_BUTTON 4
*#if(WINVER >= 0x0500)
define DFC_POPUPMENU 5
#endif / WINVER >= 0x0500 */
//DFC_CAPTION
define DFCS_CAPTIONCLOSE 0x0000
define DFCS_CAPTIONMIN 0x0001
define DFCS_CAPTIONMAX 0x0002
define DFCS_CAPTIONRESTORE 0x0003
define DFCS_CAPTIONHELP 0x0004
//DFC_MENU
define DFCS_MENUARROW 0x0000
define DFCS_MENUCHECK 0x0001
define DFCS_MENUBULLET 0x0002
define DFCS_MENUARROWRIGHT 0x0004
//DFC_SCROLL
define DFCS_SCROLLUP 0x0000
define DFCS_SCROLLDOWN 0x0001
define DFCS_SCROLLLEFT 0x0002
define DFCS_SCROLLRIGHT 0x0003
define DFCS_SCROLLCOMBOBOX 0x0005
define DFCS_SCROLLSIZEGRIP 0x0008
define DFCS_SCROLLSIZEGRIPRIGHT 0x0010
//
define DFCS_BUTTONCHECK 0x0000
define DFCS_BUTTONRADIOIMAGE 0x0001
define DFCS_BUTTONRADIOMASK 0x0002
define DFCS_BUTTONRADIO 0x0004
define DFCS_BUTTON3STATE 0x0008
define DFCS_BUTTONPUSH 0x0010
//
define DFCS_INACTIVE 0x0100
define DFCS_PUSHED 0x0200
define DFCS_CHECKED 0x0400
define DFCS_TRANSPARENT 0x0800
define DFCS_HOT 0x1000
-
endif / WINVER >= 0x0500 /
define DFCS_ADJUSTRECT 0x2000
define DFCS_FLAT 0x4000
define DFCS_MONO 0x8000
======================================================================
Static Function DrawButtonPush(hDC,aRect,lPushed,lEnabled)
Local nState
DEFAULT lPushed:=.F., lEnabled:=.T.
nState:=nOr(DFCS_BUTTONPUSH,if(lPushed,DFCS_PUSHED,0),if(!lEnabled,DFCS_INACTIVE,0))
return DrawFrameControl(hDC,aRect,DFC_BUTTON,nState)
======================================================================
Static Function DrawCheckBox(hDC,aRect,lChecked,lEnabled)
Local nState
DEFAULT lChecked:=.F., lEnabled:=.T.
DEFAULT lChecked:=.F., lEnabled:=.T.
nState:=nOr(DFCS_BUTTONCHECK,if(lChecked,DFCS_CHECKED,0),if(!lEnabled,DFCS_INACTIVE,0))
return DrawFrameControl(hDC,aRect,DFC_BUTTON,nState)
*======================================================================
Static Function DrawRadioButton(hDC,aRect,lChecked,lEnabled)
Local nState
DEFAULT lChecked:=.F., lEnabled:=.T.
nState:=nOr(DFCS_BUTTONRADIO,if(lChecked,DFCS_CHECKED,0),if(!lEnabled,DFCS_INACTIVE,0))
return DrawFrameControl(hDC,aRect,DFC_BUTTON,nState)
======================================================================
Static Function DrawGuide(hDC,aRect)
return DrawFrameControl(hDC,aRect,DFC_MENU,DFCS_MENUARROW)
======================================================================