пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Реалізація списків та полів вводу у MFC (класи, ініціалізація, основні функції).

Список (или окно списка) является одним из стандартных элементов управления. Он предназначен для отображения последовательности однотипных данных.

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. Следует отметить, что таким образом могут быть созданы и другие элементы управления: кнопки, списки, переключатели и т.д.


22.06.2015; 09:38
хиты: 244
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь