|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| user32.lib
| Header File
| winuser.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
GrayString
The GrayString function draws gray text at the specified location. The function draws the
text by copying it into a memory bitmap, graying the bitmap, and then copying the
bitmap to the screen. The function grays the text regardless of the selected
brush and background. GrayString uses the font currently selected for the specified device context.
If the lpOutputFunc parameter is NULL, GDI uses the TextOut function, and the lpData parameter is assumed to be a pointer to the character string to be output. If
the characters to be output cannot be handled by TextOut (for example, the string is stored as a bitmap), the application must supply
its own output function.
BOOL GrayString(
HDC hDC,
| // handle to the device context
| HBRUSH hBrush,
| // handle to the brush for graying
| GRAYSTRINGPROC lpOutputFunc,
| // pointer to the callback function
| LPARAM lpData,
| // pointer to application-defined data
| int nCount,
| // number of characters to output
| int X,
| // horizontal position
| int Y,
| // vertical position
| int nWidth,
| // width
| int nHeight
| // height
| );
|
|
Parameters
hDC
Identifies the device context.
hBrush
Identifies the brush to be used for graying. If this parameter is NULL, the
text is grayed with the same brush that was used to draw window text.
lpOutputFunc
Points to the application-defined function that will draw the string, or, if TextOut is to be used to draw the string, it is a NULL pointer. For details, see the OutputProc callback function.
lpData
Specifies a pointer to data to be passed to the output function. If the lpOutputFunc parameter is NULL, lpData must be a pointer to the string to be output.
nCount
Specifies the number of characters to be output. If the nCount parameter is zero, GrayString calculates the length of the string (assuming lpData is a pointer to the string). If nCount is 1 and the function pointed to by lpOutputFunc returns FALSE, the image is shown but not grayed.
X
Specifies the device x-coordinate of the starting position of the rectangle
that encloses the string.
Y
Specifies the device y-coordinate of the starting position of the rectangle
that encloses the string.
nWidth
Specifies the width, in device units, of the rectangle that encloses the
string. If this parameter is zero, GrayString calculates the width of the area, assuming lpData is a pointer to the string.
nHeight
Specifies the height, in device units, of the rectangle that encloses the
string. If this parameter is zero, GrayString calculates the height of the area, assuming lpData is a pointer to the string.
Return Values
If the string is drawn, the return value is nonzero.
If either the TextOut function or the application-defined output function returned zero, or there
was insufficient memory to create a memory bitmap for graying, the return value
is zero.
Remarks
Without calling GrayString, an application can draw grayed strings on devices that support a solid gray
color. The system color COLOR_GRAYTEXT is the solid-gray system color used to
draw disabled text. The application can call the GetSysColor function to retrieve the color value of COLOR_GRAYTEXT. If the color is other
than zero (black), the application can call the SetTextColor function to set the text color to the color value and then draw the string
directly. If the retrieved color is black, the application must call GrayString to gray the text.
See Also
DrawText, GetSysColor, OutputProc, SetTextColor, TabbedTextOut, TextOut
| Last news from Greatis Software |
 |
|
Nostalgia .Net |
|
.Net is powerful, but not all-powerful, so sometimes we need to use Win32 API for our .Net applications. It's simple enough with Platform Invoke if you have Win32 skill, but we do not always have time to dig the ancient documentation, declare the special types that are compatible with Win32, find the values of the Win32's constants and so on. Nostalgia .Net offers several simple-to-use classes, and components that will allow you to forget about the headache of Win32 and just use the power of Win32 in your application the same way as you use the native. Net classes. More » |
| Recommended software for developers |
 |
|
Ultimate Pack |
|
Component pack for Delphi and C++ Builder that contains runtime form designer, runtime object inspector, print suite and much more for the very special price. More » |
 |
|
Form Designer .Net |
|
Unique runtime form design solution that allows to edit any form in .Net WinForms application at runtime with full source codes for only 300 euro! More » |
 |
|
Print Suite .Net |
|
Print Suite .Net is a set of components for easy printing texts, images and grids from your WinForms applications. Full C# source codes are available More » |
 |
|
Gradient Controls .Net |
|
Gradient Controls .Net offers controls with gradient background feature. Labels, panels and so on... Full C# source codes are available More » |
 |
|
Greatis iGrid |
|
iGrid plots drawing grid right over your desktop, so you can use it everywhere, with any drawing application without any special plugins for different graphic editors. More » |
All the contacts and projectsDmitry Vasiliev (just.dmitry)
Related LinksSoftware for Visual Studio .NET developers Software for Delphi and C++ Builder developers Software for Visual Basic 6 developers Delphi Tips&Tricks MegaDetailed.NET More Online Helps Win32 Programmer's Reference Win32 Multimedia Programmer's Reference OLE Programmer's Reference Microsoft Windows Pen API Programmer's Reference Microsoft Windows Sockets 2 Reference Microsoft Windows Telephony API (TAPI) Programmer's Reference Unix Manual Pages
|