Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.217.144.32] |
|
Сообщ.
#1
,
|
|
|
ХАЛЛО ПИПЛ!
пытаюсь добавить jpeg картинки в виде пиктограмок в CImageList, но пока тока черные квадратики void CGalleryView::OnLvnItemchangedAlbumList(NMHDR *pNMHDR, LRESULT *pResult) { .............. if (!mThumbnailImageList.GetSafeHandle()) { mThumbnailImageList.Create(64, 64, ILC_COLOR24, 1, 1); } mThumbnailImageList.SetImageCount(0); for (int i = 0; i < GetDocument()->GetMyPictureModel()->RowCount(); ++i) { CBitmap bitmap; CImage image; // тут загружается jpeg файл image.Load(GetDocument()->GetMyPictureModel()->MyPictureFilePath(i)); BOOL fOK = bitmap.Attach(image.Detach()); ASSERT(fOK); BITMAP bm; bitmap.GetObject(sizeof(bm), &bm); TRACE("bm.bmWidth = %d\n", bm.bmWidth); TRACE("bm.bmHeight = %d\n", bm.bmHeight); CDC srcDC; srcDC.CreateCompatibleDC(GetDC()); srcDC.SelectObject(&bitmap); CBitmap thumbnail; thumbnail.CreateBitmap(64, 64, 1, 24, NULL); CDC thumbDC; thumbDC.CreateCompatibleDC(GetDC()); thumbDC.SelectObject(&thumbnail); // копируем в масштабе thumbDC.SetStretchBltMode(COLORONCOLOR); thumbDC.StretchBlt(0, 0, 64, 64, &srcDC, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY); // добавлаем thumbnail в CImageList mThumbnailImageList.Add(&thumbnail, RGB(0, 0, 0)); } TRACE("image count = %d\n", mThumbnailImageList.GetImageCount()); mMyPictureList.SetImageList(&mThumbnailImageList, LVSIL_NORMAL); // добавляем итемы в CListCtrl for (int i = 0; i < mThumbnailImageList.GetImageCount(); ++i) { CString pictureName = GetDocument()->GetMyPictureModel()->MyPictureFilePath(i); mMyPictureList.InsertItem(i, pictureName, i); } } class CGalleryView : public CFormView { ..... private: CImageList mThumbnailImageList; } |
Сообщ.
#2
,
|
|
|
Сообщ.
#3
,
|
|
|
все разобрался дело было в операторе
thumbnail.CreateBitmap(64, 64, 1, 24, NULL); поставил 32 вместо 24 все поканало thumbnail.CreateBitmap(64, 64, 1, 32, NULL); теперь вместо черных квадратиков иконки размером 64 на 64 |