Интерфейс IShellIconOverlay (shlobj_core.h)
Предоставляет методы, используемые расширением пространства имен для указания наложения значков для содержащихся в нем объектов.
Наследование
Интерфейс IShellIconOverlay наследуется от интерфейса IUnknown . IShellIconOverlay также содержит следующие типы элементов:
Методы
Интерфейс IShellIconOverlay содержит следующие методы.
IShellIconOverlay::GetOverlayIconIndex Возвращает индекс наложения значка в списке системных образов. |
IShellIconOverlay::GetOverlayIndex Возвращает индекс наложения в списке системных образов. |
Комментарии
Наложения значков — это небольшие изображения, размещенные в левом нижнем углу значка, представляющего объект Shell. Обычно они используются для добавления дополнительных сведений к значку. Часто используемое наложение значка — это маленькая стрелка, указывающая, что значок файла или папки представляет ярлык.
Наложения значков являются частью списка образов системы. У них есть два идентификатора. Один из них — это индекс наложения, который определяет наложение относительно других наложений в списке изображений. Другой — индекс изображения, который идентифицирует фактическое изображение. Эти два индекса эквивалентны значениям, присвоенным параметрам iOverlay и iImage , соответственно, при добавлении наложения значков в список частных изображений с помощью ImageList::SetOverlayImage.
Перед отображением значка для объекта оболочка вызывает интерфейс IShellIconOverlay связанной папки, чтобы запросить, должен ли значок объекта иметь наложение. Обычно он вызывает IShellIconOverlay::GetOverlayIndex для запроса индекса наложения. В некоторых случаях оболочка может вызывать IShellIconOverlay::GetOverlayIconIndex для запроса индекса изображения наложения. Чтобы указать наложение значков, методы должны вернуть запрошенный индекс. В противном случае они возвращают S_FALSE.
Чтобы указать наложение значков, оба метода должны сначала получить индекс наложения в списке образов системы, вызвав SHGetIconOverlayIndex. При первом вызове SHGetIconOverlayIndex оболочка использует имя файла наложения и индекс в файле, чтобы добавить изображение в список системных образов. После наложения в списке системных образов оболочка просто использует имя файла и индекс в качестве идентификатора. Вы также можете использовать SHGetIconOverlayIndex для получения индекса наложения нескольких стандартных системных наложений. IShellIconOverlay::GetOverlayIndex просто возвращает индекс наложения в оболочку. IShellIconOverlay::GetOverlayIconIndex должен использовать макрос INDEXTOOVERLAYMASK для преобразования индекса наложения в эквивалентный индекс изображения.
Количество различных обработчиков наложения значков, которые может поддерживать система, ограничено объемом пространства, доступного для наложения значков в списке образов системы. В настоящее время для наложения значков выделено пятнадцать слотов, некоторые из которых зарезервированы системой. По этой причине наложения значков следует указывать только в том случае, если нет удовлетворительных альтернатив.
Этот интерфейс реализуется расширениями пространства имен, которые должны указывать наложения значков для своих объектов.
Этот интерфейс обычно не используется приложениями.
Требования
Минимальная версия клиента | Windows 2000 Professional, Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | shlobj_core.h |