Initializing the Image Lists for a List View Control

A list view control can have up to three image lists associated with it: one for item icons in icon view, one for item icons in other views, and one for application-defined item states. The following example creates two image lists, adds an icon to each, and assigns them to a list view control by using the LVM_SETIMAGELIST message.

// InitListViewImageList - creates image lists for a list view.

// Returns TRUE if successful or FALSE otherwise.

// hwndLV - handle of the list view control

BOOL WINAPI InitListViewImageLists(HWND hwndLV)

{

HICON hiconItem; // icon for list view items

HIMAGELIST himlLarge; // image list for icon view

HIMAGELIST himlSmall; // image list for other views

// Create the full-sized and small icon image lists.

himlLarge = ImageList_Create(GetSystemMetrics(SM_CXICON),

GetSystemMetrics(SM_CYICON), TRUE, 1, 1);

himlSmall = ImageList_Create(GetSystemMetrics(SM_CXSMICON),

GetSystemMetrics(SM_CYSMICON), TRUE, 1, 1);

// Add an icon to each image list.

hiconItem = LoadIcon(g_hinst, MAKEINTRESOURCE(IDI_ITEM));

ImageList_AddIcon(himlLarge, hiconItem);

ImageList_AddIcon(himlSmall, hiconItem);

DeleteObject(hiconItem);

// Assign the image lists to the list view control.

ListView_SetImageList(hwndLV, himlLarge, LVSIL_NORMAL);

ListView_SetImageList(hwndLV, himlSmall, LVSIL_SMALL);

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