CComboBox

CComboBox клас забезпечує функціональність Windows поле зі списком.

Поле зі списком складається в поєднанні з статичний елемент керування або редагування списку. Список із частину елемент керування може відображатися в усі часи або може тільки падіння вниз, коли користувач вибирає на стрілку розкривного списку поруч з елементом керування.

Наразі виділеного елемента (якщо є) в полі списку відображається в статичного або редагувати елемент керування. Крім того, якщо поле зі списком має стиль списку, користувач може ввести початковий символ одного з елементів у списку та списку, якщо його відображено, буде виділити наступний елемент з початковий символ.

У наступній таблиці порівнюються три списком стилів

Стиль Коли відображається список? Статичний або редагувати елемент керування?
Простий Завжди Редагувати
Розкривний Коли впали вниз Редагувати
Розкривний список Коли впали вниз Статичний

Можна створити об'єкт CComboBox будь-якому діалоговому шаблон або безпосередньо в коді. В обох випадках перший виклик конструктора CComboBox побудувати об'єкт CComboBox ; потім викликати функцію член Створити для створення елемента керування і додайте його до CComboBox об'єкта.

Якщо ви хочете, щоб впоратися з Windows сповіщення про повідомлення, надіслані на поле зі списком своїх батьків (зазвичай клас, отриманих від CDialog), додати повідомлення карта запис і повідомлення обробника член функції батьківського класу для кожного повідомлення.

Кожен запис повідомлення карта має такий вигляд:

ON_Повідомлення про(код,,memberFxn)

де id задає Ідентифікатор дочірнього вікна елемента керування списком надсилання сповіщень і memberFxn -ім'я батьківського член функції, що ви написали обробляти сповіщення.

Прототип функції батьків виглядає наступним чином:

afx_msg недійсними memberFxn( );

Порядок, в якому певні повідомлення буде відправлено не може передбачити. Зокрема, CBN_SELCHANGE повідомлення може виникнути перед або після CBN_CLOSEUP повідомлення.

Потенціал повідомлення карта записи є наступні:

Якщо створюється CComboBox об'єкт у діалоговому вікні (через діалогове вікно ресурсу), CComboBox об'єкт автоматично знищені, коли користувач закриває діалогове вікно.

Якщо вбудувати CComboBox об'єкт у іншому вікні об'єкта, ви не повинні знищити його. Якщо ви створюєте CComboBox об'єкт у стеку, знищити автоматично. Якщо ви створюєте об'єкт CComboBox в купі за допомогою нової функції, ви повинні викликати Видалити на об'єкт, щоб знищити його, коли знищені Windows поле зі списком.

# включити lt;afxwin.h>

|&Nbsp членів класу ; Базовий клас | Ієрархічна діаграма

Зразок  MFC зразок CTRLBARS

Дивіться також CWnd, CButton, по кредиту, CListBox, CScrollBar, CStatic, CDialog

Index