Столкнулся со странностью и нелогичностью.
1. Первая ситуация.
Имеется элемент DI_LISTBOX. Изначально в параметре List (
Item[6]
) - 4 элемента: первая строка видна, остальные - с флагом LIF_HIDDEN (скрытые).Если запросить элемент у движка (команда
DM_GETDLGITEM
) и посмотреть 6-й элемент, то там 4 строки (как и ожидается); все, кроме первой, с ключом LIF_HIDDEN.2. Вторая ситуация: то же самое, но в исходном массиве строк нет ни одной видимой. Либо вообще без первой строкиЮ либо её указать тоже с флагом LIF_HIDDEN.
Теперь если запросить то же самое, то "внутренний" список (
item[6]
) - пустой!!!Мне кажется это неправильным: ведь в процессе работы диалога могут измениться условия, по которым определяется видимость строк. В первом случае любую невидимую строку можно сделать видимой. Но если изначально не было ни одной видимой строки, то это уже навсегда (ну, если только нет доступа к сохранённому исходному массиву)
Для экспериментов даю маленький скрипт: