新手,问题很白痴,望不吝赐教:
void MYBITMAP::Init(HINSTANCE hInstance,int iResource,int row,int col)
{
BITMAP bm;
inum=row;
jnum=col; hBm=LoadBitmap(hInstance,MAKEINTRESOURCE(iResource));
GetObject(hBm,sizeof(BITMAP),&bm); width=bm.bmWidth/inum;
height=bm.bmHeight/jnum;
}
关于这句GetObject(hBm,sizeof(BITMAP),&bm);
hBm是HBITMAP型,bm是BITMAP型
问题1:这个hBm是个句柄吧,他所代表的资源,目前是存在于内存中还是外存中(这个问题问的可能很白,不过不问清楚的话,问题2可能会不明白。总之我很新手……)
问题2:函数的应该是把hBm所指向的那个资源写入bm缓冲区,请问,调用这个函数后,hBm是否依然指向原来的资源的位置,还是只想了bm缓冲区,我看到程序的其他部分在应用这个资源的时候,用的都是hBm,没有用到(bm.……),那这么写入缓冲区有什么用?仅仅是为了得出后面的width和height的值吗?
void MYBITMAP::Init(HINSTANCE hInstance,int iResource,int row,int col)
{
BITMAP bm;
inum=row;
jnum=col; hBm=LoadBitmap(hInstance,MAKEINTRESOURCE(iResource));
GetObject(hBm,sizeof(BITMAP),&bm); width=bm.bmWidth/inum;
height=bm.bmHeight/jnum;
}
关于这句GetObject(hBm,sizeof(BITMAP),&bm);
hBm是HBITMAP型,bm是BITMAP型
问题1:这个hBm是个句柄吧,他所代表的资源,目前是存在于内存中还是外存中(这个问题问的可能很白,不过不问清楚的话,问题2可能会不明白。总之我很新手……)
问题2:函数的应该是把hBm所指向的那个资源写入bm缓冲区,请问,调用这个函数后,hBm是否依然指向原来的资源的位置,还是只想了bm缓冲区,我看到程序的其他部分在应用这个资源的时候,用的都是hBm,没有用到(bm.……),那这么写入缓冲区有什么用?仅仅是为了得出后面的width和height的值吗?
解决方案 »
- 用C语言实现的图形界面库 WGI 1.0.4 发布了,下载源代码
- 21070839 C++/VC/MFC 群招人 莫潜水 喜欢讨论技术 当然有高手更好
- 结构体指针的问题
- 为什么VC++总是报错(error C2143: syntax error : missing ';' before '}')
- 如何把一个.h和.lib文件组合成一个DLL,或者把.lib注册成COM+控件
- 如何判断一段字符是什么操作系统的内码?
- 真心求教:如何在属性表标题拦加上最小化和最大化按扭并让他响应鼠标按键
- 做过GINA的同志们过来看看
- bug,help!
- CString转成char*时,GETBUFFER()的参数是什么?
- 什么控件适合显示曲线?
- Gdi+ 的一个小问题
2、GetObject是获取位图的信息,比如宽、高什么的,获取到的信息保存到了bm中,hBm的指向不会发生变化