Compartilhar via


Função GrayStringA (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, esmaecendo o bitmap e copiando o bitmap para a tela. A função esmaece o texto independentemente do pincel e da tela de fundo selecionados. GrayString usa a fonte atualmente selecionada para o contexto do dispositivo especificado.

Se thelpOutputFuncparameter for NULL, o GDI usará a função TextOut e o thelpDataparameter será considerado um ponteiro para a cadeia de caracteres a ser saída. Se os caracteres a serem de saída não puderem ser manipulados por TextOut (por exemplo, a cadeia de caracteres será armazenada como um bitmap), o aplicativo deverá fornecer sua própria função de saída.

Sintaxe

BOOL GrayStringA(
  [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 esmaeamento. Se esse parâmetro for NULL, o texto será esmaecido com o mesmo pincel 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 OutputProc de retorno de chamada.

[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 saída.

[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 coloca 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.

Valor de retorno

Se a cadeia de caracteres for desenhada, o valor retornado não será zero.

Se a função TextOut ou a função de saída definida pelo aplicativo retornar zero ou não houver memória suficiente para criar um bitmap de memória para esmaece, o valor retornado será zero.

Observações

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 para 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.

Nota

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 do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho winuser.h (inclua Windows.h)
biblioteca User32.lib
de DLL User32.dll

Consulte também

DrawText

GetSysColor

OutputProc

funções de pintura e desenho

Visão geral de pintura e desenho

SetTextColor

tabbedTextOut

textout