Função GrayStringW (winuser.h)
A função GrayString desenha texto cinza no local especificado. A função desenha o texto copiando-o em um bitmap de memória, esmaeçando o bitmap e copiando o bitmap para a tela. A função esmaeça o texto, independentemente do pincel e da tela de fundo selecionados. GrayString usa a fonte selecionada no momento para o contexto de dispositivo especificado.
Se thelpOutputFuncparameter for NULL, gDI usará a função TextOut e olpDataparameter será considerado um ponteiro para a cadeia de caracteres a ser saída. Se os caracteres a serem gerados não puderem ser tratados pelo TextOut (por exemplo, a cadeia de caracteres é armazenada como um bitmap), o aplicativo deve fornecer sua própria função de saída.
Sintaxe
BOOL GrayStringW(
[in] HDC hDC,
[in] HBRUSH hBrush,
[in] GRAYSTRINGPROC lpOutputFunc,
[in] LPARAM lpData,
[in] int nCount,
[in] int X,
[in] int Y,
[in] int nWidth,
[in] int nHeight
);
Parâmetros
[in] hDC
Um identificador para o contexto do dispositivo.
[in] hBrush
Um identificador para o pincel a ser usado para cinza. Se esse parâmetro for NULL, o texto ficará esmaecido com o mesmo pincel que foi usado para desenhar o texto da janela.
[in] lpOutputFunc
Um ponteiro para a função definida pelo aplicativo que desenhará a cadeia de caracteres ou, se TextOut for usado para desenhar a cadeia de caracteres, será um ponteiro NULL . Para obter detalhes, consulte a função de retorno de chamada OutputProc .
[in] lpData
Um ponteiro para os dados a serem passados para a função de saída. Se o parâmetro lpOutputFunc for NULL, lpData deverá ser um ponteiro para a cadeia de caracteres a ser gerada.
[in] nCount
O número de caracteres a serem gerados. Se o parâmetro nCount for zero, GrayString calculará o comprimento da cadeia de caracteres (supondo que lpData seja um ponteiro para a cadeia de caracteres). Se nCount for 1 e a função apontada por lpOutputFunc retornar FALSE, a imagem será mostrada, mas não esmaeçada.
[in] X
A coordenada x do dispositivo da posição inicial do retângulo que inclui a cadeia de caracteres.
[in] Y
A coordenada y do dispositivo da posição inicial do retângulo que inclui a cadeia de caracteres.
[in] nWidth
A largura, em unidades de dispositivo, do retângulo que inclui a cadeia de caracteres. Se esse parâmetro for zero, GrayString calculará a largura da área, supondo que lpData seja um ponteiro para a cadeia de caracteres.
[in] nHeight
A altura, em unidades de dispositivo, do retângulo que inclui a cadeia de caracteres. Se esse parâmetro for zero, GrayString calculará a altura da área, supondo que lpData seja um ponteiro para a cadeia de caracteres.
Retornar valor
Se a cadeia de caracteres for desenhada, o valor retornado será diferente de zero.
Se a função TextOut ou a função de saída definida pelo aplicativo tiver retornado zero ou não houver memória suficiente para criar um bitmap de memória para cinza, o valor retornado será zero.
Comentários
Sem chamar GrayString, um aplicativo pode desenhar cadeias de caracteres esmaecedas em dispositivos que dão suporte a uma cor cinza sólida. A cor do sistema COLOR_GRAYTEXT é a cor do sistema cinza-sólido usada para desenhar texto desabilitado. O aplicativo pode chamar a função GetSysColor para recuperar o valor de cor de COLOR_GRAYTEXT. Se a cor for diferente de zero (preto), o aplicativo poderá chamar a função SetTextColor para definir a cor do texto com o valor de cor e, em seguida, desenhar a cadeia de caracteres diretamente. Se a cor recuperada for preta, o aplicativo deverá chamar GrayString para esmaeçar o texto.
Observação
O cabeçalho winuser.h define GrayString como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winuser.h (inclua Windows.h) |
Biblioteca | User32.lib |
DLL | User32.dll |