Поделиться через


CListCtrl::InsertItem

Вставляет элемент в элемент управления "список".

int InsertItem(
   const LVITEM* pItem 
);
int InsertItem(
   int nItem,
   LPCTSTR lpszItem 
);
int InsertItem(
   int nItem,
   LPCTSTR lpszItem,
   int nImage 
);
int InsertItem(
   UINT nMask,
   int nItem,
   LPCTSTR lpszItem,
   UINT nState,
   UINT nStateMask,
   int nImage,
   LPARAM lParam
);

Параметры

  • pItem
    Указатель на структуру LVITEM, определяющая атрибуты элемента, как описано в Windows SDK.

  • nItem
    Индекс вставляемого элемента.

  • lpszItem
    Адрес строка, содержащая метку элемента или LPSTR_TEXTCALLBACK если элемент является элементом обратного вызова.Дополнительные сведения об элементах обратного вызова см. в разделе CListCtrl::GetCallbackMask.

  • nImage
    Индекс образа элемента или I_IMAGECALLBACK если элемент является элементом обратного вызова.Дополнительные сведения об элементах обратного вызова см. в разделе CListCtrl::GetCallbackMask.

  • nMask
    Параметр nMask определяет, какие атрибуты элемента, передаваемые в качестве параметров допустимы.Он может иметь одно или несколько значений маски, описанных в LVITEM Structure в Windows SDK.Допустимые значения можно объединять с побитовое ИЛИ оператором.

  • nState
    Отображает состояние элемента, изображение состояния и перекрытия образа.См. в разделах LVITEM Structure дополнительные сведения и List-View Item StatesWindows SDK для получения списка допустимых флагов.

  • nStateMask
    Указывает, будут восстановлены или будут изменены, биты участника штата.См. раздел LVITEM Structure в Windows SDK дополнительные сведения.

  • lParam
    32 Разрядное конкретного приложения значение, связанное с элементом.Если указан этот параметр, то необходимо установить для атрибута LVIF_PARAMnMask.

Возвращаемое значение

Индекс нового элемента, если успешно, и -1 - в противном случае.

Заметки

Вызов этого метода может привести к отправке сообщения LVM_INSERTITEM в окне элемента управления.Соответствующий обработчик сообщений для элемента управления может не знать задать текст элемента под определенные условия (например помощью стилей окна, как LVS_OWNERDRAW).Дополнительные сведения об этих условиях см. в разделе LVM_INSERTITEM в Windows SDK.

Пример

        CString strText;
        int nColumnCount = m_myListCtrl.GetHeaderCtrl()->GetItemCount();

        // Insert 10 items in the list view control.
        for (int i = 0; i < 10; i++)
        {
            strText.Format(TEXT("item %d"), i);

            // Insert the item, select every other item.
            m_myListCtrl.InsertItem(LVIF_TEXT | LVIF_STATE, i, strText, 
                (i % 2) == 0 ? LVIS_SELECTED : 0, LVIS_SELECTED, 0, 0);

            // Initialize the text of the subitems.
            for (int j = 1; j < nColumnCount; j++)
            {
                strText.Format(TEXT("sub-item %d %d"), i, j);
                m_myListCtrl.SetItemText(i, j, strText);
            }
        }

Требования

Header: afxcmn.h

См. также

Ссылки

Класс CListCtrl

Диаграмма иерархии

CListCtrl::DeleteItem

CListCtrl::DeleteAllItems

LVM_INSERTITEM