Список (или окно списка) является одним из стандартных элементов управления. Он предназначен для отображения последовательности однотипных данных.
CListBox :: AddString (LPCTSTR lpszItem); Добавляет строку в список lpszItem - указатель на строку, прилагается. Возвращает индекс добавленного строки.
int CListBox :: GetCurSel ();
Возвращает индекс выбранной строки. Если ни одна строка списке не выбран - возвращает LB_ERR.
int CListBox :: GetText (int nIndex, LPTSTR lpszBuffer); Записывает содержимое строке nIndex в указатель lpzsBuffer. Возвращает длину строки в байтах.
int CListBox :: DeleteString (UINT nIndex); Удаление строку с номером nIndex из списка. Во-возвращает количество строк, осталась.
int CListBox :: InsertString (int nIndex, LPCTSTR lpszItem); Добавляет указатель на строку lpszItem ю позицию nIndex списка, либо в конец списка, если nIndex равна 1. Возвращает номер позиции, в которую добавлена строка.
int CListBox :: GetCount () Возвращает количество строк в списке или LB_ERR в случае ошибки.
инициализация списка
BOOL CSampleDialog :: OnInitDialog ()
[CDialog :: OnInitDialog ();
lb = (CListBox *) GetDlgItem (IDC_LIST1); // Связывание указателя lb и ресурса IDC_LIST1
lb-> AddString ("Киев"); // Добавление строки в список
lb-> AddString ("Харьков"); // Добавление строки в список
return TRUE; ]
Простое поле редактирования в MFC обеспечивается классом CEdit. Элемент редактирования является прямоугольным дочерним окном, в которое пользователь может ввести текст.
Для записи строки в поле редактирования используется функция SetWindowText (), а для считывания строки - функция GetWindowText (). Эти функ-ции обрабатывают одно- и многострочные поля редактирования.
1) Объявить объект типа CEdit в классе главного окна, например:
CEdit ed;
2) Определить идентификатор поля редактирования, например:
#define IDC_EDIT1 4001
3) В конструкторе главного окна создать поле редактирования с определенными параметрами:
ed.Create (WS_VISIBLE | WS_CHILD | WS_BORDER, CRect (10,10,140,40), this, IDC_EDIT1);
4) Провести в конструкторе необходимые операции по инициализации объекта:
ed.SetWindowText ("программирование");
В примере использована функция Create () класса CEdit. Следует отметить, что таким образом могут быть созданы и другие элементы управления: кнопки, списки, переключатели и т.д.