Ícones de classe
O ícone usado para representar um objeto de classe pode ser especificado no atributo iconPath no contêiner DisplaySpecifiers. Além disso, cada classe pode armazenar vários estados de ícone. Por exemplo, uma classe de pasta pode ter ícones para os estados aberto, fechado e desabilitado. A implementação atual aceita um máximo de dezesseis estados de ícone diferentes por classe.
O atributo iconPath pode ser especificado de duas maneiras.
<state>,<icon file name>
or
<state>,<module file name>,<resource ID>
Nesses exemplos, o "estado>"< é um inteiro com um valor entre 0 e 15. O valor 0 é definido como sendo o estado padrão ou fechado do ícone. O valor 1 é definido como sendo o estado aberto do ícone. O valor 2 é o estado desabilitado. Todos os outros valores são definidos pelo aplicativo.
O "nome> do arquivo de ícone"< é o caminho e o nome de arquivo de um arquivo de ícone que contém a imagem do ícone.
O "nome> do arquivo do módulo"< é o caminho e o nome do arquivo de um módulo, como um EXE ou DLL, que contém a imagem do ícone em um recurso. O "ID> do recurso"< é um inteiro que especifica o identificador de recurso do recurso de ícone dentro do módulo.
Para adicionar um valor ao atributo iconPath , execute as etapas a seguir.
- Determine se o valor do atributo existe. Se um valor for substituído, primeiro, exclua o valor existente usando o método IADs::P utEx com o parâmetro lnControlCode definido como ADS_PROPERTY_DELETE e o parâmetro vProp definido como o valor a ser removido. Não use ADS_PROPERTY_CLEAR ou ADS_PROPERTY_UPDATE para lnControlCode.
- Crie a cadeia de caracteres que representa os dados do ícone de atributo. Para obter um exemplo, consulte o formato acima.
- Para adicionar o novo valor, use o método IADs::P utEx com o parâmetro lnControlCode definido como ADS_PROPERTY_APPEND.
- Para confirmar alterações no diretório, chame IADs::SetInfo.