Função CopyImage (winuser.h)
Cria uma nova imagem (ícone, cursor ou bitmap) e copia os atributos da imagem especificada para a nova. Se necessário, a função alonga os bits para se ajustar ao tamanho desejado da nova imagem.
Sintaxe
HANDLE CopyImage(
[in] HANDLE h,
[in] UINT type,
[in] int cx,
[in] int cy,
[in] UINT flags
);
Parâmetros
[in] h
Tipo: HANDLE
Um identificador para a imagem a ser copiada.
[in] type
Tipo: UINT
O tipo de imagem a ser copiada. Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Copia um bitmap. |
|
Copia um cursor. |
|
Copia um ícone. |
[in] cx
Tipo: int
A largura desejada, em pixels, da imagem. Se for zero, a imagem retornada terá a mesma largura que a hImage original.
[in] cy
Tipo: int
A altura desejada, em pixels, da imagem. Se for zero, a imagem retornada terá a mesma altura que a hImage original.
[in] flags
Tipo: UINT
Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Exclui a imagem original depois de criar a cópia. |
|
Tenta recarregar um ícone ou recurso de cursor do arquivo de recurso original em vez de simplesmente copiar a imagem atual. Isso é útil para criar uma cópia de tamanho diferente quando o arquivo de recurso contém vários tamanhos do recurso. Sem esse sinalizador, CopyImage estende a imagem original para o novo tamanho. Se esse sinalizador for definido, CopyImage usará o tamanho no arquivo de recurso mais próximo do tamanho desejado. Isso só terá êxito se hImage tiver sido carregado por LoadIcon ou LoadCursor ou por LoadImage com o sinalizador LR_SHARED. |
|
Retornará o hImage original se atender aos critérios para a cópia, ou seja, dimensões corretas e profundidade de cor, nesse caso, o sinalizador LR_COPYDELETEORG será ignorado. Se esse sinalizador não for especificado, um novo objeto será sempre criado. |
|
Se isso for definido e um novo bitmap for criado, o bitmap será criado como uma seção DIB. Caso contrário, a imagem de bitmap será criada como um bitmap dependente do dispositivo. Esse sinalizador só será válido se uType for IMAGE_BITMAP. |
|
Usa o formato de cor padrão. |
|
Usa a largura ou altura especificada pelos valores de métrica do sistema para cursores ou ícones, se os valores cxDesired ou cyDesired forem definidos como zero. Se esse sinalizador não for especificado e cxDesired e cyDesired forem definidos como zero, a função usará o tamanho real do recurso. Se o recurso contiver várias imagens, a função usará o tamanho da primeira imagem. |
|
Cria uma nova imagem monocromática. |
Retornar valor
Tipo: HANDLE
Se a função for bem-sucedida, o valor retornado será o identificador para a imagem recém-criada.
Se a função falhar, o valor retornado será NULL. Para obter informações de erro estendidas, chame GetLastError.
Comentários
Quando terminar de usar o recurso, você poderá liberar sua memória associada chamando uma das funções na tabela a seguir.
Recurso | Função Release |
---|---|
Bitmap | DeleteObject |
Cursor | DestroyCursor |
ícone | Destroyicon |
No entanto, o sistema exclui automaticamente o recurso quando seu processo é encerrado, no entanto, chamar a função apropriada salva memória e diminui o tamanho do conjunto de trabalho do processo.
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 |
Conjunto de APIs | ext-ms-win-ntuser-gui-l1-3-0 (introduzido no Windows 10, versão 10.0.10240) |
Confira também
Conceitual
Referência