Adding Columns to a List View Control

Columns appear only in report view, and they enable multiple pieces of information to be displayed for each list item. You can add columns to a list view control by using the LVM_INSERTCOLUMN message. Each item in a list view control can have, in addition to its item text, any number of strings called subitems. When you add a column to a list view control, you specify which subitem to display in the column.

Unless a list view control has the LVS_NOCOLUMNHEADER window style, each column has a header showing the column name. The user can click the header and can size the columns using the header.

The following example adds several columns to a list view control. The column headings are defined as string resources, which are consecutively numbered starting with IDS_FIRSTCOLUMN (defined in the application's header file). The number of columns is defined in the application's header file as C_COLUMNS.

// InitListViewColumns - adds columns to a list view control.

// Returns TRUE if successful or FALSE otherwise.

// hwndLV - handle of the list view control

BOOL WINAPI InitListViewColumns(HWND hwndLV)

{

extern char g_achTemp[256]; // temporary buffer

LV_COLUMN lvc;

int iCol;

// Initialize the LV_COLUMN structure.

lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;

lvc.fmt = LVCFMT_LEFT;

lvc.cx = 100;

lvc.pszText = g_achTemp;

// Add the columns.

for (iCol = 0; iCol < C_COLUMNS; iCol++) {

lvc.iSubItem = iCol;

LoadString(g_hinst, IDS_FIRSTCOLUMN + iCol,

g_achTemp, sizeof(g_achTemp));

if (ListView_InsertColumn(hwndLV, iCol, &lvc) == -1)

return FALSE;

}

return TRUE;

}

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database