| Предыдущий | Следующий |
| ERROR_INVALID_LB_MESSAGE | ERROR_LB_WITHOUT_TABSTOPS |
ERROR_SETCOUNT_ON_BAD_LB
Для LB_SETCOUNT требуется список с LBS_NODATA
LB_SETCOUNT задаёт число элементов списка, созданного со стилем LBS_NODATA . Такой элемент управления используется для очень больших наборов элементов, когда список не хранит обычные строки для каждого элемента.
Отправка этого сообщения обычному списку означает несоответствие между моделью хранения, выбранной при создании элемента, и сообщением, используемым позднее. Одного добавления LBS_OWNERDRAWFIXED недостаточно; в документации Microsoft соответствующим требованием указан LBS_NODATA .
Что проверить
- Проверьте стиль списка в ресурсе или вызове
CreateWindowEx. - Для списков, хранящих данные, используйте обычное заполнение через
LB_ADDSTRING/LB_INSERTSTRING. - Для очень больших виртуальных списков создайте элемент со стилем
LBS_NODATAи правильно реализуйте получение данных при отрисовке владельцем. - Не используйте
LB_SETCOUNTне следует использовать лишь как сокращённый способ предварительно выделить обычные элементы.
Сбой вызван не выходом числа элементов за диапазон; сам тип списка не поддерживает это сообщение.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
