我的问题是:我在一对话框上添加了一个Picture控件,在它的属性框里设置了用它来显示一个位图资源。我的对话框可以变动大小,我的Picture控件随着对话框的大小变换而成比例的变换大小。现在,我在Picture控件的属性框中如果选中了“Center Image”项,则我在打开各种位图文件显示的时候,如果位图大于我的控件大小,它则只显示位图的中间部分;如果位图小于控件大小,它则只在控件的中间显示位图。如果我不在控件的属性框中选中“Center Image”项,则我在打开各种位图文件显示的时候,位图有多大,控件就显示多大,甚至会超出我的对话框大小。
我想达到的目的是:
我的控件由我控制大小,但是位图显示出来,不管它本身有多大,都伸缩变换到我的控件大小进行显示。
我现在的代码是
HBITMAP hBitmap = NULL;
VERIFY(strcmp(G_OpenFileName, ""));
hBitmap = (HBITMAP )LoadImage(AfxGetApp()->m_hInstance,
G_OpenFileName, IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR |
LR_LOADFROMFILE); m_WaveUIBmpCtrl.SetBitmap(hBitmap);请问该怎么实现???
解决方案 »
- FAT32文件系统突然掉电后文件内容多出一块
- 达人帮下忙,opengl下怎么算出已经旋转的圆锥的顶点 所对应的屏幕2d坐标
- 由Ink文件怎样得到该Ink文件的实际Exe路径和名称?急.............有源码提供最好,在线等!!!
- [超菜问题]CTreeCtrl的节点如何灰掉?
- Spin不响应UDN_DELTAPOS消息
- ADO读取int数据,类型转换问题,非常急,请帮忙.
- (1)[问题精解]PHP中Echo也出错?
- help,怎么在vc里播放wav啊?
- 求助,关于3DES加解密
- 自绘textbox中文输入问题,请高人指点
- 紧急求助:数据内容在clistctrl控件里实现编辑修改功能?
- 关于截取文本文件字段到数据库中
再把图片动态的加进去
CRect rc;
CWnd *pWnd=GetDlgItem(IDC_PICTURE);
pWnd->GetWindowRect(&rc);CString string_pictures="E:\\Pic\\SOURCE1.bmp";
HBITMAP hbitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),string_pictures,
IMAGE_BITMAP,rc.Width(),rc.Height(), LR_CREATEDIBSECTION|LR_LOADFROMFILE);CStatic *pStatic;
pStatic=(CStatic *)GetDlgItem(IDC_PICTURE);
pStatic->ModifyStyle(0xF,SS_BITMAP|SS_CENTERIMAGE);
pStatic->SetBitmap(hbitmap);
上面是获得控件大小,然后把图片加载上去的。