在MFC的对话中加载了一幅图像,现在想获取指向该图像的一个指针,如何操作?
答案:3 悬赏:80 手机版
解决时间 2021-02-18 17:47
- 提问者网友:骑士
- 2021-02-18 00:16
在MFC的对话中加载了一幅图像,现在想获取指向该图像的一个指针,如何操作?
最佳答案
- 五星知识达人网友:骨子里都是戏
- 2021-02-18 01:40
//选择图像
CDC bmDC;
bmDC.CreateCompatibleDC(ctrlDC);
bmDC.SelectObject(m_hbm);
//然后
CBitmap* pbit = bmDC.GetCurrentBitmap();
BITMAP bitmapInfo;
pbit->GetObject(sizeof(BITMAP),&bitmapInfo);
//你看看BITMAP bitmapInfo;里面的结构,你想要的东西都在里面了
//还是推荐你看看windows 程序设计里面的位图部分,非常详尽追问那如何获得指向该位图的第一个像素的指针呢追答。。你没看BITMAP bitmapInfo的结构吗
typedef struct tagBITMAP
{
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP, *PBITMAP, NEAR *NPBITMAP, FAR *LPBITMAP;
bmBits就是那个指针,结构里还有这个指针指向的内存长度。。
你都得到了这个结构,不是什么·都有了吗,
不要这么死板啊。追问好的,这个真没看,我得把MSDN装一下,哎,死板没办法啊,不是学计算机的,现在做一个东西,还非得用VC编,这不是难为我嘛,哎。。。追答你追问了,还必须得回一下,要不每次都跳出提示,度娘不给力啊
CDC bmDC;
bmDC.CreateCompatibleDC(ctrlDC);
bmDC.SelectObject(m_hbm);
//然后
CBitmap* pbit = bmDC.GetCurrentBitmap();
BITMAP bitmapInfo;
pbit->GetObject(sizeof(BITMAP),&bitmapInfo);
//你看看BITMAP bitmapInfo;里面的结构,你想要的东西都在里面了
//还是推荐你看看windows 程序设计里面的位图部分,非常详尽追问那如何获得指向该位图的第一个像素的指针呢追答。。你没看BITMAP bitmapInfo的结构吗
typedef struct tagBITMAP
{
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP, *PBITMAP, NEAR *NPBITMAP, FAR *LPBITMAP;
bmBits就是那个指针,结构里还有这个指针指向的内存长度。。
你都得到了这个结构,不是什么·都有了吗,
不要这么死板啊。追问好的,这个真没看,我得把MSDN装一下,哎,死板没办法啊,不是学计算机的,现在做一个东西,还非得用VC编,这不是难为我嘛,哎。。。追答你追问了,还必须得回一下,要不每次都跳出提示,度娘不给力啊
全部回答
- 1楼网友:鸽屿
- 2021-02-18 03:19
m_hbm 不是吗?追问不是的,我试过了啊追答图像能画出来不, ?应该就是,你看下是不是那 被你删除了
- 2楼网友:想偏头吻你
- 2021-02-18 02:23
CDC类有个函数是把句柄转换为对象:FromHandle(HANDLE h)
如果你要设计到图像处理,就要去看看
BITMAPFILEHEADER
BITMAPINFO
RGBQUAD这些相关结构了
如果你要设计到图像处理,就要去看看
BITMAPFILEHEADER
BITMAPINFO
RGBQUAD这些相关结构了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯