VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 147|回复: 3

[已解决]在MFC的List控件循环添加图片的问题

[复制链接]
01_avatar_middle
最佳答案
0 
在线会员 发表于 2020-3-10 15:16:21 | 显示全部楼层 |阅读模式
萌新想往list控件中把本地的jpg图片当做缩略图添加上去,使用了ATL的CImage类去操作,但是遇到了一些问题,不知道为啥只是重复展示第一张图片,萌新瞅了一天也没瞅明白问题出在哪,查了半天资料也没什么头绪,感觉钻牛角尖忽略了什么,希望大神能指点一二
void CListAddImageDlg::AddImageList(const CStringArray &strarry)
{
        CImage old_image;
        CImage new_image;
        int n = strarry.GetCount();
        for (int i = 0; i < n; i++)
        {
                old_image.Load(strarry[i]);
                new_image.Create(100, 70, 32);
                HDC temp = new_image.GetDC();
                SetStretchBltMode(temp, HALFTONE);
                old_image.StretchBlt(temp, 0, 0, 100, 70);
                new_image.ReleaseDC();

                HBITMAP hBitmap = new_image.Detach();
                old_image.Destroy();
                new_image.Destroy();
               
                CBitmap bmp;
                bmp.DeleteObject();
                bmp.Attach(hBitmap);
                m_imagelist.Add(&bmp, nullptr);
                ::DeleteObject(hBitmap);
        }
        m_list.SetImageList(&m_imagelist, LVSIL_SMALL);
}
用两个CImage的原因是希望把图片全部缩放成统一的大小,追求一点美观
图片所有的地址是存进CStringArray &strarry里的

最佳答案
77_avatar_small
2020-3-10 16:33:24
完整工程代码发一下吧,也好调试!
这么光看还真不太好看出问题




上一篇:vc mfc
下一篇:为什么我添加的控件在debug模式看得见,在relea就没了
77_avatar_middle
最佳答案
31 
online_vip 发表于 2020-3-10 16:33:24 | 显示全部楼层    本楼为最佳答案   
完整工程代码发一下吧,也好调试!
这么光看还真不太好看出问题
01_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2020-3-10 17:31:24 | 显示全部楼层
Health 发表于 2020-3-10 16:33
完整工程代码发一下吧,也好调试!
这么光看还真不太好看出问题

多谢大佬理我这个帖子,经过下午的努力,我解决我那个问题了,CImage,HDC,HBITMAP,CBitmap,CImageList都没问题,问题就一个,我没有用LVITEM去设置第几行显示第几张图片,设置后就会正常显示了,不设置就所有行默认显示第一张图片。在MFC的List控件循环添加图片的问题
77_avatar_middle
最佳答案
31 
online_vip 发表于 2020-3-10 17:35:07 | 显示全部楼层
机智少女不怀孕 发表于 2020-3-10 17:31
多谢大佬理我这个帖子,经过下午的努力,我解决我那个问题了,CImage,HDC,HBITMAP,CBitmap,CImageLis ...

哈哈,解决了就好
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-7-12 01:04

Powered by CcTry.CoM

© 2009-2020 cctry.com

快速回复 返回顶部 返回列表