L_EfxPatternFillRect
#include "l_bitmap.h"
L_INT EXT_FUNCTION L_EfxPatternFillRect(hDC, pRect, uStyle, crBack, crFore)
HDC hDC; |
/* handle to the target device context */ |
RECT L_FAR * pRect; |
/* pointer to the display rectangle */ |
L_UINT uStyle; |
/* filling style */ |
COLORREF crBack; |
/* background color */ |
COLORREF crFore; |
/* foreground color */ |
Draws a rectangle into the target device context, and then fills the rectangle with the specified pattern and color.
Parameter |
Description |
|
hDC |
Handle to the target device context. |
|
pRect |
Pointer to the display destination rectangle. |
|
uStyle |
Filling style. The following are possible values. (Values cannot be combined.) |
|
|
Value |
Meaning |
|
EFX_PATTERN_SOLID |
Solid |
|
EFX_PATTERN_HORZ_LINE |
Horizontal lines (==) |
|
EFX_PATTERN_VERT_LINE |
Vertical lines (||) |
|
EFX_PATTERN_DOWNWARD_DIAG |
Downward diagonal lines (//) |
|
EFX_PATTERN_UPWARD_DIAG |
Upward diagonal lines (\\) |
|
EFX_PATTERN_CROSS |
Cross line (++) |
|
EFX_PATTERN_DIAG_CROSS |
Diagonal cross lines (XX) |
|
EFX_PATTERN_MAX |
Diagonal cross lines (XX) |
crBack |
COLORREF value that specifies the background color. |
|
crFore |
COLORREF value that specifies the foreground color. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
For general information, refer to Implementing Special Effects.
Required DLLs and Libraries
LTEFX For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Platforms
Windows 95 / 98 / Me, Windows 2000 / XP, Windows CE.
See Also
Functions: |
L_EfxDraw3dShape, L_EfxDraw3dText, L_EfxDrawFrame, L_EfxDrawRotated3dText, L_EfxEffectBlt, L_EfxGradientFillRect, L_EfxPaintBitmap, L_EfxPaintTransition |
Topics: |
|
|
Example
/* This example shows the minimum requirements for using the L_EfxPatternFillRect */
/* function to draw and fill a rectangle with a pattern and color. */
void TestFunction( HWND hWnd, RECT *pDest )
{
HDC hdc; /* Device context for the current window */
HPALETTE hSavedPalette = NULL; /* Temporary copy of the current system palette */
HPALETTE hOurPalette = NULL; /* The palette that we will use to paint */
L_INT nBitsPerPixel;
/* Get the device context */
hdc = GetDC (hWnd);
/* Check the device to see if we need a palette */
nBitsPerPixel = GetDeviceCaps( hdc, BITSPIXEL ) * GetDeviceCaps ( hdc, PLANES );
if ( nBitsPerPixel <=8 )
{
hOurPalette = (HPALETTE)GetStockObject (DEFAULT_PALETTE);
hSavedPalette = SelectPalette (hdc, hOurPalette, FALSE);
/* Realize our palette */
RealizePalette (hdc);
}
/* Draw the pattern filled rectangle */
L_EfxPatternFillRect ( hdc, /* device context */
pDest, /* destination rectangle */
EFX_PATTERN_DIAG_CROSS, /* diagonal cross pattern */
RGB ( 0,0,0 ), /* background color, black */
RGB ( 0,0,255 ) ); /* foreground color, blue */
/* Restore the old palette */
if ( hOurPalette )
SelectPalette (hdc, hSavedPalette, FALSE);
/* Release the device context */
ReleaseDC(hWnd, hdc);
return;
}