Método IImageList::ImageListSetIcon (mmc.h)
O método IImageList::ImageListSetIcon permite que um usuário defina um ícone na lista de imagens ou crie um ícone se ele não estiver lá.
Sintaxe
HRESULT ImageListSetIcon(
[in] LONG_PTR *pIcon,
[in] long nLoc
);
Parâmetros
[in] pIcon
Um valor que especifica o identificador HICON do Win32 para o ícone a ser definido. O tipo deve ser convertido como um ponteiro para um LONG_PTR. O snap-in é proprietário desse recurso e deve liberá-lo quando terminar. Uma perda de memória de recurso ocorrerá se o snap-in não liberar o Ícone.
[in] nLoc
Um valor que especifica o índice atribuído à entrada. Esse é um índice virtual que é mapeado internamente para o índice real.
Valor retornado
Esse método pode retornar um desses valores.
Comentários
Se o índice especificado por nLoc tiver sido usado antes, ImageListSetIcon substituirá o ícone armazenado em nLoc. Se ele não tiver sido usado anteriormente, uma nova entrada na lista de imagens será adicionada. O ícone que está sendo inserido deve ter os tamanhos de pixel 32x32 e 16x16 definidos.
Alterar seletivamente o ícone pequeno ou grande em uma lista de imagens
No MMC 1.2, duas novas macros são introduzidas para dar suporte à alteração apenas do ícone pequeno ou grande em uma lista de imagens. As duas macros, ILSI_LARGE_ICON e ILSI_SMALL_ICON, são aplicadas ao parâmetro nLoc de ImageListSetIcon.A macro ILSI_LARGE_ICON é usada para alterar apenas o ícone grande em nLoc. A macro ILSI_SMALL_ICON é usada para alterar apenas o ícone pequeno em nLoc.
Para definir diferentes ícones grandes e pequenos, você pode usar uma das duas macros. Os exemplos de código a seguir mostram essas macros.
Snippet de código 1
pImageList->ImageListSetIcon((LONG_PTR*) hLargeIcon, nLoc); // set both
pImageList->ImageListSetIcon((LONG_PTR*) hSmallIcon, ILSI_SMALL_ICON (nLoc)); // change small
Snippet de código 2
pImageList->ImageListSetIcon((LONG_PTR*) hSmallIcon, nLoc); // set both
pImageList->ImageListSetIcon((LONG_PTR*) hLargeIcon, ILSI_LARGE_ICON (nLoc)); // change large
Antes de usar ILSI_LARGE_ICON ou ILSI_SMALL_ICON, o snap-in deve primeiro inserir uma imagem em nLoc. O método ImageListSetIcon falhará se a macro ILSI_LARGE_ICON ou ILSI_SMALL_ICON for usada e nLoc não se referir a uma imagem existente.
Requisitos
Cliente mínimo com suporte | Windows Vista |
Servidor mínimo com suporte | Windows Server 2008 |
Plataforma de Destino | Windows |
Cabeçalho | mmc.h |
DLL | Mmcndmgr.dll |