List-View 列を追加する方法
このトピックでは、リスト ビュー コントロールに列を追加する方法について説明します。 列は、リスト ビュー コントロールがレポート (詳細) ビューにある場合にアイテムとサブ項目を表示するために使用されます。 選択した列のテキストをタイル ビューに表示することもできます。
知っておくべきこと
テクノロジ
前提条件
- C/C++
- Windows ユーザー インターフェイス プログラミング
手順
リスト ビュー コントロールに列を追加するには、 LVM_INSERTCOLUMN メッセージを送信するか、ListView_InsertColumn マクロを使用します。 列を削除するには、LVM_DELETECOLUMN メッセージを使用します。
次の C++ コード例では、 ListView_InsertColumn マクロを呼び出して、リスト ビュー コントロールに列を追加します。 列見出しは、アプリケーションのヘッダー ファイルで文字列リソースとして定義され、IDS_FIRSTCOLUMNから連続して番号が付けられます。 ヘッダー ファイル内の列の数は、 C_COLUMNS として 定義されます。
// InitListViewColumns: Adds columns to a list-view control.
// hWndListView: Handle to the list-view control.
// Returns TRUE if successful, and FALSE otherwise.
BOOL InitListViewColumns(HWND hWndListView)
{
WCHAR szText[256]; // Temporary buffer.
LVCOLUMN lvc;
int iCol;
// Initialize the LVCOLUMN structure.
// The mask specifies that the format, width, text,
// and subitem members of the structure are valid.
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
// Add the columns.
for (iCol = 0; iCol < C_COLUMNS; iCol++)
{
lvc.iSubItem = iCol;
lvc.pszText = szText;
lvc.cx = 100; // Width of column in pixels.
if ( iCol < 2 )
lvc.fmt = LVCFMT_LEFT; // Left-aligned column.
else
lvc.fmt = LVCFMT_RIGHT; // Right-aligned column.
// Load the names of the column headings from the string resources.
LoadString(g_hInst,
IDS_FIRSTCOLUMN + iCol,
szText,
sizeof(szText)/sizeof(szText[0]));
// Insert the columns into the list view.
if (ListView_InsertColumn(hWndListView, iCol, &lvc) == -1)
return FALSE;
}
return TRUE;
}
関連トピック