MFCにおける `InsertItem` 関数の使用方法
MFC (Microsoft Foundation Class)のCListCtrlクラスでは、リストコントロールを操作するためのメンバ関数が用意されています。その中には、InsertItem()関数があります。
InsertItem()関数はリストコントロールに新しい項目を挿入し、挿入された項目のインデックスを返します。構文は次のとおりです。
int InsertItem(const LVITEM* pItem);
LVITEM構造体を指すpItemパラメータは、挿入するアイテムの詳細を指定します。LVITEM構造体には、挿入するアイテムのさまざまなプロパティ(アイコン、テキスト、サブアイテムなど)が含まれています。
InsertItem()関数を使うと、アイコン付きの項目、またはテキストのみの項目をリストコントロールに挿入することができます。たとえば、テキストのみの項目を挿入する場合は、以下のように実行できます。
CString strItem = L"New Item";
LVITEM lvItem;
lvItem.mask = LVIF_TEXT;
lvItem.pszText = strItem.GetBuffer();
int nIndex = m_listCtrl.InsertItem(&lvItem);
strItem.ReleaseBuffer();
このコードでは、まずCStringオブジェクトstrItemを作成し、挿入するアイテムのテキストを格納します。次に、LVITEM構造体であるlvItemを定義し、そのmaskメンバーをLVIF_TEXTに設定します。これは、挿入するアイテムがテキストであることを示します。次に、strItemをLPCTSTR型に変換し、lvItem.pszTextメンバーに代入します。これは、挿入するアイテムのテキスト内容を表します。最後に、InsertItem()関数を呼び出して新しいアイテムを挿入し、返されたインデックス値をnIndex変数に格納します。
挿入時にはアイコンやサブアイテムなど他の属性を指定することもできるので、用途に合わせて使い分けるとよいだろう