Сообщения в списках

Процедуру диалогового окна можно отправлять сообщения в список для добавления, удаления, изучать и изменить элементы списка. Например процедуру диалогового окна может отправить сообщение LB_ADDSTRING в список для добавления элемента и сообщение LB_GETSEL , чтобы определить, выбран ли элемент. Другие сообщения задавать и извлекать сведения о размере, внешний вид и поведение списка. К примеру сообщение LB_SETHORIZONTALEXTENT устанавливает прокрутки ширина поля списка. Процедуру диалогового окна можно отправить любое сообщение в список, используя функции SendMessage или SendDlgItemMessage.

Элемента списка часто ссылаются его индекс, целое число, представляющее позицию элемента в списке. Индекс первого элемента в списке равно 0, индекс второго пункта 1 и т. д.

В следующей таблице описывается, как заранее определенного списка поля процедура отвечает на сообщения окна списка.

Сообщение Ответ
LB_ADDFILE Вставка файла в поле со списком каталогов заполнены с помощью функции DlgDirList и получает список поле Индекс вставленного элемента.
LB_ADDSTRING Добавляет строку в поле со списком и возвращает его индекс.
LB_DELETESTRING Удаляет строку из списка и возвращает количество строк, остающихся в списке.
LB_DIR Добавляет список имен файлов в список и возвращает индекс последнего файла добавлены.
LB_FINDSTRING Возвращает индекс первой строки в поле со списком, соответствующий данным префиксом.
LB_FINDSTRINGEXACT Возвращает индекс строки, которая эквивалентна или префикса с данным префиксом.
LB_GETANCHORINDEX Возвращает индекс элемента, который последняя выбран мыши.
LB_GETCARETINDEX Возвращает индекс элемента, имеющего прямоугольник фокуса.
LB_GETCOUNT Возвращает количество элементов в списке.
LB_GETCURSEL Возвращает индекс текущего выбранного элемента.
LB_GETHORIZONTALEXTENT Возвращает прокручиваемой ширину в пикселах, списка.
LB_GETITEMDATA Возвращает 32-битное значение, связанное с элементом данного.
LB_GETITEMHEIGHT Возвращает высоту в пикселах в поле со списком пункта.
LB_GETITEMRECT Извлекает клиентских координат элемента данного списка.
LB_GETLOCALE Получает язык в списке. Старшее слово содержит код страны и младшее слово содержит идентификатор языка.
LB_GETSEL Возвращает состояние выбора элемента списка.
LB_GETSELCOUNT Возвращает число выбранных элементов в поле со списком множественного выделения.
LB_GETSELITEMS Создает массив индексы всех выбранных элементов в поле со списком множественного выделения и возвращает общее число выделенных элементов.
LB_GETTEXT Извлекает строку, связанную с элементом данного и длину строки.
LB_GETTEXTLEN Возвращает длину в символах, связанных с элементом данного.
LB_GETTOPINDEX Возвращает индекс первого видимого элемента в поле со списком.
LB_INITSTORAGE Выделяет память для указанное количество элементов и их связанные строки.
LB_INSERTSTRING Вставляет строку с заданным индексом в списке.
LB_ITEMFROMPOINT Возвращает начинающийся с нуля индекс элемента ближайшим заданной точки в поле со списком.
LB_RESETCONTENT Удаляет все элементы из списка.
LB_SELECTSTRING Выделение первой строки, который он находит, что соответствует данным префиксом.
LB_SELITEMRANGE Выбирает данный диапазон элементов в поле со списком.
LB_SELITEMRANGEEX Выбор определенного диапазона элементов, если индекс первого элемента в диапазоне меньше чем индекс последнего элемента в диапазоне. Отменяет выделение в диапазоне, если больше, чем последний индекс первого элемента.
LB_SETANCHORINDEX Задает элемент, мыши прошлый раз для данного элемента.
LB_SETCARETINDEX Задает прямоугольник фокуса для элемента данного списка.
LB_SETCOLUMNWIDTH Задает ширину в пикселах, всех столбцов в поле со списком.
LB_SETCOUNT Задает число элементов в списке.
LB_SETCURSEL Выбор элемента данного списка.
LB_SETHORIZONTALEXTENT Устанавливает прокручиваемой ширину в пикселах, списка.
LB_SETITEMDATA Связывает 32-разрядное значение с элемента списка.
LB_SETITEMHEIGHT Задает высоту в пикселах, элемента или элементов в поле со списком.
LB_SETLOCALE Устанавливает язык списка и возвращает предыдущий идентификатор языка.
LB_SETSEL Выбирает элемент в поле со списком множественного выделения.
LB_SETTABSTOPS Устанавливает табуляции к документам, указанным в заданном массиве.
LB_SETTOPINDEX Прокрутка списка таким образом указанный элемент находится в верхней части видимого диапазона.

Index