CDC::GrayStri&ngnbsp;

virtual BOOL GrayString ( CBrush * pBrush, BOOL ( CALLBACK exportação * lpfnOutput ) ( HDC, LPARAM, int ), LPARAM lpData, int nCount, int x, int y, int nWidth, int nHeight );

Valor de retorno

Diferente de zero se a Cadeia de caracteres é desenhada, ou 0 se a função TextOut ou a função de saída fornecido de aplicativo retornou 0, ou se não havia memória suficiente para criar um bitmap de memória para o escurecimento.

Parâmetros

pBrush

Identifica o pincel a ser usada para esmaecendo (graying).

lpfnOutput

Especifica o endereço da instância do procedimento da função de retorno de chamada fornecido do aplicativo que irá desenhar a Cadeia de caracteres. Para obter mais informações, consulte a descrição da Windows OutputFunc função callback. Se este parâmetro for NULL, o sistema usa a Windows TextOut função para desenhar a seqüência de caracteres e lpData será considerado um ponteiro longo para o seqüência de caracteres a ser saída.

lpData

Especifica um ponteiro até que ponto para dados a serem passados para a função de saída. Se lpfnOutput for NULL, lpData deve ser um ponteiro longo para o seqüência de caracteres a ser saída.

nCount

Especifica o número de caracteres a ser saída. Se este parâmetro for 0, GrayString calcula o comprimento da Cadeia de caracteres (supondo que lpData é um ponteiro para a Cadeia de caracteres). Se nCount é – 1 e a função apontada pelo lpfnOutput retorna 0, a imagem é mostrada, mas não esmaecida.

x

Especifica a lógica coordenada x da posição inicial do Retangular que inclui a Cadeia de caracteres.

y

Especifica a lógica coordenada y da posição inicial do Retangular que inclui a Cadeia de caracteres.

nWidth

Especifica a largura (nas unidades lógicas) do Retangular que inclui a Cadeia de caracteres. Se nWidth for 0, GrayString calculará a largura da área, assumindo que lpData é um ponteiro para o seqüência de caracteres.

nHeight

Especifica a altura (em unidades lógicas) do Retangular que inclui a Cadeia de caracteres. Se nHeight for 0, GrayString calculará a altura da área, assumindo que lpData é um ponteiro para o seqüência de caracteres.

Observações

Desenha esmaecido texto (cinza) no local indicado por escrever o texto em um bitmap de memória, esmaecimento de bitmap e, em seguida, copiando o bitmap para a exibir. A função escurece o texto independentemente do pincel selecionado e plano de fundo. A função de membro GrayString usa a fonte selecionada no momento. O modo de mapeamento MM_TEXT deve ser selecionado antes de usar esta função.

Um aplicativo pode desenhar esmaecidas seqüências (cinza) em dispositivos que oferecem suporte a uma cor cinza sólida sem chamar a função de membro GrayString . A cor do sistema COLOR_GRAYTEXT é a cor cinza sólido sistema usada para desenhar texto desativado. O aplicativo pode chamar o GetSysColor função do Windows para recuperar o valor de cor de COLOR_GRAYTEXT. Se a cor for diferente de 0 (preto), o aplicativo pode chamar a função de membro SetTextColor para definir cor do texto para o valor de cor e, em seguida, desenhar a seqüência de caracteres diretamente. Se a cor recuperada é preto, o aplicativo deve chamar GrayString para escurecer (cinza) o texto.

Se lpfnOutput for NULL, GDI usa o Windows função TextOut e lpData será considerado um ponteiro até que ponto o caractere a ser saída. Se os caracteres a ser saída não podem ser manipulados pela função de membro TextOut (por exemplo, a Cadeia de caracteres é armazenada como um bitmap), o aplicativo deve fornecer seu próprio função de saída.

Observe também que todas as funções de retorno de chamada devem interceptar exceções Microsoft Foundation antes de retornar ao Windows, uma vez que exceções não podem ser lançadas através de limites de retorno de chamada. Para obter mais informações sobre exceções, consulte o artigo exceções no Guia do programador do Visual C++.

A função de retorno de chamada passada para GrayString deve usar o stdcall Convenção de chamada e deve ser exportada com declspec.

Quando o quadro está no modo de visualização, uma chamada para a função de membro GrayString é convertida para uma chamada TextOut e o retorno de chamada função não é chamada.

Visão geral do CDCMembros de classe | Gráfico de hierarquia

Consulte tambémnbsp; :: GetSysColor, CDC::SetTextColor, CDC::TextOut, :: GrayString

Index