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 );

Return Value

The index of the new item if successful or -1 otherwise.

Parameters

pItem

Pointer to an LVITEM structure that specifies the item’s attributes, as described in the Platform SDK.

nItem

Index of the item to be inserted.

lpszItem

 Address of a string containing the item’s label, or LPSTR_TEXTCALLBACK if the item is a callback item. For information on callback items, see CListCtrl::GetCallbackMask.

nImage

Index of the item’s image, or I_IMAGECALLBACK if the item is a callback item. For information on callback items, see CListCtrl::GetCallbackMask.

nMask

The nMask parameter specifies which item attributes passed as parameters are valid. It can be one or more of the mask values described in LVITEM structure in the Platform SDK. The valid values can be combined with the bitwise OR operator.

nState

Indicates the item's state, state image, and overlay image. See the Platform SDK topics LVITEM for more information and List View Item States for a list of valid flags.

nStateMask

Indicates which bits of the state member will be retrieved or modified. See LVITEM in the Platform SDK for more information.

nImage

Index of the item’s image within the image list.

lParam

A 32-bit application-specific value associated with the item. If this parameter is specified, you must set the nMask attribute LVIF_PARAM.

Remarks

Inserts an item into the list view control.

Example

// The pointer to my list view control.
extern CListCtrl* pmyListCtrl;

CString strText;
int nColumnCount = pmyListCtrl->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.
   pmyListCtrl->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);
      pmyListCtrl->SetItemText(i, j, strText);
   }
}

CListCtrl OverviewClass MembersHierarchy Chart

See Also   CListCtrl::DeleteItem, CListCtrl::DeleteAllItems