
Класс CListBox обеспечивает функциональность списка Windows. Поле со списком отображается список элементов, таких как имена файлов, которые пользователь может просматривать и выберите.
В окне Выбор списка пользователь может выбрать только один элемент. В поле списка со множественным выбором можно выбрать диапазон элементов. Когда пользователь выбирает элемент, он выделяется и поле со списком отправляет сообщение уведомления родительскому окну.
Поле со списком можно создать из шаблона диалогового окна или непосредственно в коде. Для создания непосредственно, CListBox объект, а затем вызвать функцию-член Create для создания списка управления Windows и прикрепить его к CListBox объекту. Чтобы использовать список в диалоговом окне шаблон, объявите переменную список в вашем классе box диалогового окна, а затем DDX_Control в функции DoDataExchange класса диалогового окна поле для соединения переменную-член для элемента управления. (ClassWizard делает это для вас автоматически при добавлении переменной элемента управления в класс диалогового окна поля.)
Строительство может быть одношаговый процесс в классе, производном от CListBox. Написать конструктор для производного класса и вызвать Create из конструктора.
Если вы хотите обработать Windows уведомления от сообщения списка на его родительского элемента (обычно класса, производного от CDialog), добавьте функцию-член карты сообщение вход и обработчика сообщений для родительского класса для каждого сообщения.
Каждая запись сообщений карта имеет следующий вид:
ON_Уведомление( код, memberFxn )
где id определяет ребенка окно Идентификатор элемента управления списка, отправку уведомлений и memberFxn — это имя функции-члена родительского, написанный для обработки уведомления.
Прототип функции родительского элемента выглядит следующим:
afx_msg void memberFxn( );
Ниже приводится список потенциальных записей сообщений карты и описание случаев, в которых они будут направляться в родитель:
Если вы создаете объект CListBox в диалоговом окне (через ресурс диалогового окна), CListBox объект автоматически удаляется при закрытии пользователем диалогового.
Если вы создаете CListBox объекта в окне, может потребоваться уничтожить объект CListBox . Если вы создаете CListBox объект в стеке, он будет удален автоматически. Если объект CListBox создается в куче с использованием новой функции, необходимо вызвать Удаление объекта, чтобы уничтожить его, когда пользователь закрывает родительского окна.
Если выделить память в объекте CListBox , переопределите деструктор CListBox распоряжаться распределения.
# include lt;afxwin.h>
Члены класса | Базовый класс | Иерархическая схема
Пример Образец CTRLTEST MFC
См. также CWnd, CButton CComboBox, CEdit, CScrollBar, CStatic