Compartilhar via


Função CreateBitmapIndirect (wingdi.h)

A função CreateBitmapIndirect cria um bitmap com a largura, a altura e o formato de cor especificados (planos de cores e bits por pixel).

Sintaxe

HBITMAP CreateBitmapIndirect(
  [in] const BITMAP *pbm
);

Parâmetros

[in] pbm

Um ponteiro para uma estrutura BITMAP que contém informações sobre o bitmap. Se um aplicativo definir os membros bmWidth ou bmHeight como zero, CreateBitmapIndirect retornará o identificador para um bitmap monocromático de 1 por 1 pixel.

Valor retornado

Se a função for bem-sucedida, o valor retornado será um identificador para o bitmap.

Se a função falhar, o valor retornado será NULL.

Essa função pode retornar os valores a seguir.

Código de retorno Descrição
ERROR_INVALID_PARAMETER
Um ou mais dos parâmetros de entrada são inválidos.
ERROR_NOT_ENOUGH_MEMORY
O bitmap é muito grande para que a memória seja alocada.

Comentários

A função CreateBitmapIndirect cria um bitmap dependente do dispositivo.

Depois que um bitmap é criado, ele pode ser selecionado em um contexto de dispositivo chamando a função SelectObject . No entanto, o bitmap só poderá ser selecionado em um contexto de dispositivo se o bitmap e o DC tiverem o mesmo formato.

Embora a função CreateBitmapIndirect possa ser usada para criar bitmaps de cor, por motivos de desempenho, os aplicativos devem usar CreateBitmapIndirect para criar bitmaps monocromáticos e CreateCompatibleBitmap para criar bitmaps de cor. Sempre que um bitmap de cor de CreateBitmapIndirect é selecionado em um contexto de dispositivo, o sistema deve garantir que o bitmap corresponda ao formato do contexto do dispositivo em que está sendo selecionado. Como CreateCompatibleBitmap usa um contexto de dispositivo, ele retorna um bitmap que tem o mesmo formato que o contexto de dispositivo especificado. Portanto, as chamadas subsequentes para SelectObject são mais rápidas com um bitmap de cor de CreateCompatibleBitmap do que com um bitmap de cor retornado de CreateBitmapIndirect.

Se o bitmap for monocromático, zeros representarão a cor de primeiro plano e os representam a cor da tela de fundo para o contexto do dispositivo de destino.

Quando você não precisar mais do bitmap, chame a função DeleteObject para excluí-lo.

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]
Plataforma de Destino Windows
Cabeçalho wingdi.h (inclua Windows.h)
Biblioteca Gdi32.lib
DLL Gdi32.dll

Confira também

BITMAP

Bitblt

Funções de bitmap

Visão geral do Bitmaps

Createbitmap

Createcompatiblebitmap

Createdibitmap

DeleteObject

Selectobject