Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > Как программно выделить строки и снять выделение


Автор: erslgoeirjh 31.10.2016, 12:46
Есть таблица m_IDC_LIST1 типа CListCtrl (режим LVS_REPORT). В этой таблице поставлен режим многострочного выделения:

ExpandedWrap disabled
m_IDC_LIST1.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);


В этой таблице я могу выделять не одну, а много строк (при помощи нажатия клавиши Ctrl и левого щелчка "мыши").
Я могу также работать с выделенными элементами:

n = m_IDC_LIST1.GetSelectedCount();
nItem = -1;
if (n>0)
{
    for (i=0; i<n; i++)
    {
        nItem = m_IDC_LIST1.GetNextItem(nItem,LVNI_SELECTED);
        // работа с выделенной строкой номер nItem;
    }
}


А как программно выделять нужные мне строки в этой таблице m_IDC_LIST1 ? И как программно снимать выделение со строк в таблице m_IDC_LIST1 ?

Автор: vol4ek 14.11.2016, 22:45
Код

SetItemState( itemIndex, LVIS_SELECTED, LVIS_SELECTED)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)