1
我想將圖像添加到列表視圖。我保存了一張32x16的圖像,並嘗試使用ImageList_Add()將其分成2張圖像(因爲它應該能夠從寬度推斷圖像的數量)。這些項目正在添加,但沒有圖像。點擊時看起來有些東西,但不是我想要的圖像和尺寸。Win32 - ListView中的圖像列表
我使用下面的代碼:
LVCOLUMN lvc = {0};
lvc.mask = LVCF_TEXT | LVCF_WIDTH;
lvc.pszText = _T("Some column header");
lvc.cx = 150;
HWND hwndListView = GetDlgItem(hwndDlg, IDC_LISTVIEW);
ListView_InsertColumn(hwndListView, 0, &lvc);
HIMAGELIST hImageList = ImageList_Create(16, 16, ILC_COLOR, 2, 0);
HBITMAP hbmBlobs = (HBITMAP)LoadImage((HINSTANCE)lParam,
MAKEINTRESOURCE(IDB_BLOBS), IMAGE_BITMAP, 0, 0, 0);
ImageList_Add(hImageList, hbmBlobs, NULL);
DeleteObject(hbmBlobs);
ListView_SetImageList(hwndListView, hImageList, LVSIL_SMALL);
ImageList_Destroy(hImageList);
LVITEM lvi = {0};
lvi.mask = LVIF_IMAGE;
lvi.iImage = 0;
ListView_InsertItem(hwndListView, &lvi);
lvi.iImage = 1;
ListView_InsertItem(hwndListView, &lvi);
我已上傳骨架代碼,做最低限度創建ListView和我在使圖像顯示的嘗試。感謝您的時間。
http://localhostr.com/file/adUSZvF/Skeleton.rar
謝謝安德斯。我一定誤解了文檔。將該行移至WM_CLOSE會導致按預期行事的對話! – 2011-04-19 07:39:22