The DrawFrameControl function draws a frame control of the specified type and style.
BOOL DrawFrameControl(
HDC hdc, // handle to device context
LPRECT lprc, // pointer to bounding rectangle
UINT uType, // frame-control type
UINT uState // frame-control state
);
Value | Meaning |
---|---|
DFC_BUTTON | Standard button |
DFC_CAPTION | Title bar |
DCF_MENU | Menu bar |
DFC_POPUPMENU | Windows 98, Windows NT 5.0 and later: Popup menu item. |
DFC_SCROLL | Scroll bar |
Value | Meaning |
---|---|
DFCS_BUTTON3STATE | Three-state button |
DFCS_BUTTONCHECK | Check box |
DFCS_BUTTONPUSH | Push button |
DFCS_BUTTONRADIO | Radio button |
DFCS_BUTTONRADIOIMAGE | Image for radio button (nonsquare needs image) |
DFCS_BUTTONRADIOMASK | Mask for radio button (nonsquare needs mask) |
If uType is DFC_CAPTION, uState can be one of the following values.
Value | Meaning |
---|---|
DFCS_CAPTIONCLOSE | Close button |
DFCS_CAPTIONHELP | Help button |
DFCS_CAPTIONMAX | Maximize button |
DFCS_CAPTIONMIN | Minimize button |
DFCS_CAPTIONRESTORE | Restore button |
If uType is DFC_MENU, uState can be one of the following values.
Value | Meaning |
---|---|
DFCS_MENUARROW | Submenu arrow |
DFCS_MENUARROWRIGHT | Submenu arrow pointing left. This is used for the right-to-left cascading menus used with right-to-left languages such as Arabic or Hebrew. |
DFCS_MENUBULLET | Bullet |
DFCS_MENUCHECK | Check mark |
If uType is DFC_SCROLL, uState can be one of the following values.
Value | Meaning |
---|---|
DFCS_SCROLLCOMBOBOX | Combo box scroll bar |
DFCS_SCROLLDOWN | Down arrow of scroll bar |
DFCS_SCROLLLEFT | Left arrow of scroll bar |
DFCS_SCROLLRIGHT | Right arrow of scroll bar |
DFCS_SCROLLSIZEGRIP | Size grip in bottom-right corner of window |
DFCS_SCROLLSIZEGRIPRIGHT | Size grip in bottom-left corner of window. This is used with right-to-left languages such as Arabic or Hebrew. |
DFCS_SCROLLUP | Up arrow of scroll bar |
The following style can be used to adjust the bounding rectangle of the push button.
Value | Meaning |
---|---|
DFCS_ADJUSTRECT | Bounding rectangle is adjusted to exclude the surrounding edge of the push button. |
One or more of the following values can be used to set the state of the control to be drawn.
Value | Meaning |
---|---|
DFCS_CHECKED | Button is checked. |
DFCS_FLAT | Button has a flat border. |
DFCS_HOT | Windows 98, Windows NT 5.0 and later: Button is hot-tracked. |
DFCS_INACTIVE | Button is inactive (grayed). |
DFCS_MONO | Button has a monochrome border. |
DFCS_PUSHED | Button is pushed. |
DFCS_TRANSPARENT | Windows 98, Windows NT 5.0 and later: The background remains untouched. |
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero.
Windows NT: To get extended error information, call GetLastError.
If uType is either DFC_MENU or DFC_BUTTON and uState is not DFCS_BUTTONPUSH, the frame control is a black-on-white mask (that is, a black frame control on a white background). In such cases, the application must pass a handle to a bitmap memory device control. The application can then use the associated bitmap as the hbmMask parameter to the MaskBlt function, or it can use the device context as a parameter to the BitBlt function using ROPs such as SRCAND and SRCINVERT.
Windows CE: Windows CE does not support the DCF_MENU value in the uType parameter. It only supports DFC_BUTTON, DFC_SCROLL, and DFC_CAPTION.
If uType is DFC_BUTTON, uState can be one of the following values.
DFCS_BUTTON3STATE
DFCS_BUTTONCHECK
DFCS_BUTTONPUSH
DFCS_BUTTONRADIO
DFCS_CAPTIONOKBTN
The DFCS_CAPTIONOKBTN value is a new constant that is unique to Windows CE.
If uType is DFC_CAPTION, uState can be one of the following values:
DFCS_CAPTIONHELP
DFCS_CAPTIONCLOSE
If uType is DFC_SCROLL, uState can be one of the following values:
DFCS_SCROLLUP
DFCS_SCROLLDOWN
DFCS_SCROLLLEFT
DFCS_SCROLLRIGHT
DFCS_SCROLLCOMBOBOX
You can use one or more of the following values to set the state of the control:
DFCS_CHECKED
DFCS_INACTIVE
DFCS_PUSHED
Windows NT: Requires version 3.51 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in winuser.h.
Import Library: Use user32.lib.
Painting and Drawing Overview, Painting and Drawing Functions, RECT