Compartilhar via


Função FillConsoleOutputAttribute

Importante

Este documento descreve a funcionalidade da plataforma de console que não faz mais parte do nosso roteiro do ecossistema. Não recomendamos o uso desse conteúdo em novos produtos, mas continuaremos a oferecer suporte aos usos existentes por tempo indeterminado. Nossa solução moderna preferida se concentra em sequências de terminais virtuais para máxima compatibilidade em cenários de multiplataforma. Você pode encontrar mais informações sobre essa decisão de design em nosso documento Console clássico versus terminal virtual.

Define os atributos de caracteres para um número especificado de células de caracteres, com início nas coordenadas especificadas em um buffer de tela.

Sintaxe

BOOL WINAPI FillConsoleOutputAttribute(
  _In_  HANDLE  hConsoleOutput,
  _In_  WORD    wAttribute,
  _In_  DWORD   nLength,
  _In_  COORD   dwWriteCoord,
  _Out_ LPDWORD lpNumberOfAttrsWritten
);

Parâmetros

hConsoleOutput [in]
Um identificador do buffer da tela do console. O identificador deve ter o direito de acesso GENERIC_WRITE. Para saber mais, confira Segurança de buffer e direitos de acesso do console.

wAttribute [in]
Os atributos para uso ao gravar no buffer de tela do console. Para saber mais, confira Atributos de caracteres.

nLength [in]
O número de células de caracteres a serem definidas para os atributos de cor especificados.

dwWriteCoord [in]
Uma estrutura COORD que especifica as coordenadas de caracteres da primeira célula cujos atributos precisam ser definidos.

lpNumberOfAttrsWritten [out]
Um ponteiro para uma variável que recebe o número de células de caracteres cujos atributos foram realmente definidos.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Se o número de células de caracteres cujos atributos devem ser definidos se estender além do final da linha especificada no buffer de tela do console, as células da próxima linha serão definidas. Se o número de células para gravação se estender além do final do buffer de tela do console, as células serão gravadas até o final do buffer de tela do console.

Os valores de caracteres nas posições gravadas não são alterados.

Dica

Essa API não é recomendada e não tem um equivalente específico de terminal virtual. O preenchimento da região fora da janela visível não é suportado e é reservado para o espaço do histórico do terminal. O preenchimento de uma região visível com novo texto ou cor é realizado pelomovimento do cursor, pela definição dos novos atributos e, em seguida, pela escrita do texto desejado para essa região, repetindo caracteres, se necessário, para a duração da execução do preenchimento. Pode ser necessário um movimento adicional do cursor seguido da escrita do texto desejado para preencher uma região retangular. Espera-se que o aplicativo cliente mantenha sua própria memória do que está na tela. Ele não pode consultar o estado remoto. Mais informações podem ser encontradas na documentação do console clássico versus terminal virtual.

Requisitos

   
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]
Cabeçalho ConsoleApi2.h (via WinCon.h, inclui o Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

Funções de Console

COORD

FillConsoleOutputCharacter

Funções de saída do console de baixo nível

SetConsoleTextAttribute

WriteConsoleOutputAttribute