Процедуру диалогового окна можно отправлять сообщения в список для добавления, удаления, изучать и изменить элементы списка. Например процедуру диалогового окна может отправить сообщение 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 | Прокрутка списка таким образом указанный элемент находится в верхней части видимого диапазона. |