Поделиться через


макрос ListView_SetItemState (commctrl.h)

Изменяет состояние элемента в элементе управления представлением списка. Этот макрос можно использовать или явно отправлять сообщение LVM_SETITEMSTATE.

Синтаксис

void ListView_SetItemState(
   HWND hwndLV,
   int  i,
   UINT data,
   UINT mask
);

Параметры

hwndLV

Тип: HWND

Дескриптор элемента управления "Представление списка".

i

Тип: int

Индекс элемента представления списка. Если этот параметр равен -1, то изменение состояния применяется ко всем элементам.

data

Тип: UINT

Новые биты состояния для элемента. Параметр маски указывает допустимые биты параметра данных . Макрос игнорирует биты в параметре данных , если соответствующий бит не задан в параметре маски. Байт низкого порядка содержит набор битовых флагов, указывающих состояние элемента. Это байт может быть сочетанием следующих значений:

Ценность Значение
LVIS_CUT
Элемент помечается для операции выреза и вставки.
LVIS_DROPHILITED
Элемент выделен как целевой объект перетаскивания.
LVIS_FOCUSED
Элемент имеет фокус, поэтому он окружен стандартным прямоугольником фокуса. Хотя может быть выбрано несколько элементов, фокус может иметь только один элемент.
LVIS_SELECTED
Выбран элемент. Внешний вид выбранного элемента зависит от того, имеет ли он фокус, а также от системных цветов, используемых для выбора. Элементы будут отображаться только в том случае, если элемент управления "Представление списка" имеет фокус или используется стиль LVS_SHOWSELALWAYS.

mask

Тип: UINT

Биты данных параметре, который требуется задать или очистить. Вы можете использовать ListView_SetItemState как для задания, так и для очистки битов. Чтобы задать индекс изображения наложения элемента, задайте LVIS_OVERLAYMASK биты. Чтобы задать индекс образа элемента, задайте LVIS_STATEIMAGEMASK биты.

Возвращаемое значение

Никакой

Замечания

Значение состояния элемента включает набор битовых флагов, указывающих состояние элемента. Значение состояния также может включать индексы списка изображений, указывающие изображение состояния элемента и изображение наложения.

Параметр маски указывает биты состояния, которые необходимо изменить, а параметр данных указывает новое значение для этих битов. Чтобы задать немного во внутреннем состоянии элемента, задайте его в параметрах маски и данных. Чтобы очистить немного во внутреннем состоянии элемента, задайте его в параметре маски и очистите его в параметре данных . Чтобы оставить немного без изменений во внутреннем состоянии элемента, снимите его в параметре маски.

Биты от 8 до 11 данных укажите одноуровневый индекс изображения наложения в списках изображений элемента управления. Как полный список изображений значков, так и список небольших значков могут содержать изображения наложения. Изображение наложения наложено на изображение значка элемента. Если эти биты равны нулю, элемент не имеет изображения наложения. Чтобы изолировать эти биты, используйте маску LVIS_OVERLAYMASK. Чтобы указать индекс наложения, используйте макрос INDEXTOOVERLAYMASK.

Биты от 12 до 15 данных укажите одноуровневый индекс изображения в списке образов элемента управления. Изображение состояния отображается рядом со значком элемента, чтобы указать определенное приложением состояние. Если эти биты равны нулю, элемент не имеет образа состояния. Чтобы изолировать эти биты, используйте маску LVIS_STATEIMAGEMASK. Чтобы указать индекс изображения состояния, используйте макрос INDEXTOSTATEIMAGEMASK.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка commctrl.h

См. также

ListView_GetItemState