заполнение данными List Control (вывод по колонкам)
От: Аноним  
Дата: 23.07.13 10:23
Оценка:
всем привет, я тут новенький, прошу не пинать.
создаю колонки.

        CRect rect;
    m_list.GetClientRect(&rect);
    int nColInterval = rect.Width()/4;

    CString str;
    
    for(int i = 1; i <= 20; i ++) // первая колонка (нумерация строк)
    {
        str.Format(_T("%d"),i);
        m_list.InsertItem (i, str);
    }

    m_list.InsertColumn(0, _T("1"), LVCFMT_LEFT, nColInterval);
    m_list.InsertColumn(1, _T("2"), LVCFMT_LEFT, nColInterval*1);
    m_list.InsertColumn(2, _T("3"), LVCFMT_LEFT, nColInterval*1);
    m_list.InsertColumn(3, _T("4"), LVCFMT_LEFT, rect.Width()-3*nColInterval);
    m_list.InsertColumn(4, _T("5"), LVCFMT_LEFT, rect.Width()-3*nColInterval);

    DWORD ExStyle = m_list.GetExtendedStyle();
    ExStyle |= LVS_EX_FULLROWSELECT; //выделять весь ряд
    ExStyle |= LVS_EX_GRIDLINES; //показывать разделительные линии
    m_list.SetExtendedStyle(ExStyle);


сразу такой вопрос, как вывести нумерацию строк через один, что бы было так: (1 пустая строка 2 пустая строка 3 пустая строка 4 пустрая строка и так далее)

теперь второй вопрос про заполнение.

как начать заполнять данными со второй колонки, что бы первая колонка оставалась постоянной(где нумерация строк).


    int nIndex = m_list.InsertItem(0,"xxxx");
    m_list.SetItemText(0,1,"1111");
    m_list.SetItemText(0,2,"2222");
    m_list.SetItemText(0,3,"3333");


делал так, не выходит


    lvItem.mask = LVIF_TEXT;
    lvItem.iItem = 0;
    lvItem.iSubItem = 0;
    lvItem.pszText = strNumber;
    m_list.InsertItem(&lvItem);


все равно лупит в первую колонку, какие бы значения не ставил.

и как отключить сортировку? что бы первое значение оставалось на верху, а остальные ниже писались.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.