Re: Как в ListView (style Report) чего-нибудь добавить?
От: nkaipov  
Дата: 17.10.02 03:50
Оценка:
Здравствуйте mihauzen, Вы писали:

M>Здравствуйте!


M>Как говориться — приехали. Уже 3-ий час мучаюсь, а бестолку. Не могу ничего добавить в созданный Grid на основе Listiew:


M>
M>m_hWndClient = m_view.Create(m_hWnd, rcDefault, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | LVS_REPORT | LVS_SHOWSELALWAYS | LVS_EX_GRIDLINES |LVS_EX_FULLROWSELECT, WS_EX_CLIENTEDGE);
M>


M>Пробовал добавить итем, картинку в качестве бекграунда, столбец — фанарь. Только фон могу менять. Использовал, казалось бы все, всё что есть в МСДН, но без результатно. Возможно, где-то ошибаюсь с заполнением структур типа LVITEM, LVCOLUMN, LVBKIMAGE. Не буду приводить свой код, чтобы не испеугать ВАС еще больше .


M>Кто может накидать пару примерчиков или кусков кода по осуществлению всего выше сказанного?

M>Киньте сюда, буду очень признателен...

Если использовать WTL, то примерно так:
    // создаём колонки
    LV_COLUMN lvc;
    lvc.mask = LVCF_FMT | LVCF_ORDER | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
    lvc.fmt = LVCFMT_LEFT;
    lvc.cx = 100;
    lvc.pszText = "TestColumn1";
    lvc.iOrder = 0;
    lvc.iSubItem = 0;
    ListView_Report.InsertColumn(0, &lvc);

    lvc.pszText = "TestColumn2";
    lvc.iOrder = 1;
    lvc.iSubItem = 1;
    ListView_Report.InsertColumn(1, &lvc);

    // заполняем хламом
    // в чистом Win32 используется LVITEM
    ListView_Report.InsertItem (0, "Колонка №1");
    ListView_Report.SetItemText(0, 1, "Колонка №2");
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.