Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с добавлением SubItem в CListCtrl

6.1K
13 октября 2008 года
Gfunk
42 / / 31.01.2006
Есть документ,представление и окно.В окне создан CListCtrl.В классе CDocument определена функция InsertData оторая принимает три параметра и добавляет их в три колонки.Когда я создаю документ(из файла) я в Serialize читаю файл и добавляю в ClListCtrl информацию.Проблема в том,что добавляются только iTem а SubItem не добавляются.Самое интересное что если вызвать функцию InsertData из другого класса(например из диалога) то все добавляется нормально.Я проверил отладчиком функция SetItem озвращает ноль.В чем проблема?Вот код:

void CDataListDoc::InsertData(LPTSTR Name1,LPTSTR Name2,LPTSTR Name3)
{
POSITION pos = GetFirstViewPosition();
CDataListView* view = (CDataListView*)GetNextView(pos);
CListCtrl& list = view->GetListCtrl();

int ItemCount = list.GetItemCount();
LVITEM lvitem;
lvitem.mask = LVIF_TEXT;
lvitem.pszText = Name1;
lvitem.iSubItem = 0;
lvitem.iItem = ItemCount;

list.InsertItem(&lvitem);

lvitem.mask = LVIF_TEXT;
lvitem.pszText = Name2;
lvitem.iSubItem = 1;
list.SetItem(&lvitem);

lvitem.pszText = Name3;
lvitem.iSubItem = 2;
list.SetItem(&lvitem);
}
288
13 октября 2008 года
nikitozz
1.2K / / 09.03.2007
Выложите ваш исходник, может станет понятней.
6.1K
14 октября 2008 года
Gfunk
42 / / 31.01.2006
Похоже разобрался с проблемой.Когда у нас есть окно,представление и документ и мы их создаем с помощью RUNTIME_CLASS то создается сначала документ,а затем представление с окном.Когда я открываю новый файл по ID_FILE_OPEN то вызывается Serialize который у меня читает файл и кидает в CView итемы.Но CView еще не создан и поэтомы каким-то макаром субитемы не добавляются,хотя итемы присутствуют.Я решил так проблему:в Serialize читаю файл и кидаю в память дату.А затем в CView по InitialUpdate заношу в CListCtrl.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог