在picture control 里贴图的问题
先贴代码::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int nSel;
nSel=m_choose_picture.GetCurSel();
CString s;
m_choose_picture.GetText(nSel,s);
// TODO: 在此添加控件通知处理程序代码
CString path;
path+=".\\图片.\\";
path+=s;
if(m_bmp.m_hObject!=NULL)
{
m_bmp.DeleteObject();
}
HBITMAP hbmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),path,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION|LR_LOADFROMFILE);
if(hbmp==NULL)
{
AfxMessageBox(TEXT("找不到位图"));
}
m_bmp.Attach(hbmp);
DIBSECTION ds;
BITMAPINFOHEADER &bminfo=ds.dsBmih;
m_bmp.GetObject(sizeof(ds),&ds);
int cx=bminfo.biWidth;
int cy=bminfo.biHeight;
CRect rect;
GetDlgItem(IDC_PIC)->GetWindowRect(&rect);
ScreenToClient(&rect);
GetDlgItem(IDC_PIC)->MoveWindow(rect.left,rect.top,cx,cy,true);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我设置在listbox表里点击捕捉到图片的名字~~~~~~~~~~~~~
问题是,显示的图片是按照图片的大小,根本不关picture control的大小有关
我想问的是:怎么才能使load进去的图片,填充picture control 的大小,即小的拉伸,大的缩小
我学过用StretchBlt来用过,不过都是操作加载进程序的位图。希望有搞过的兄弟告诉我一下。。
int nSel;
nSel=m_choose_picture.GetCurSel();
CString s;
m_choose_picture.GetText(nSel,s);
// TODO: 在此添加控件通知处理程序代码
CString path;
path+=".\\图片.\\";
path+=s;
if(m_bmp.m_hObject!=NULL)
{
m_bmp.DeleteObject();
}
HBITMAP hbmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),path,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION|LR_LOADFROMFILE);
if(hbmp==NULL)
{
AfxMessageBox(TEXT("找不到位图"));
}
m_bmp.Attach(hbmp);
DIBSECTION ds;
BITMAPINFOHEADER &bminfo=ds.dsBmih;
m_bmp.GetObject(sizeof(ds),&ds);
int cx=bminfo.biWidth;
int cy=bminfo.biHeight;
CRect rect;
GetDlgItem(IDC_PIC)->GetWindowRect(&rect);
ScreenToClient(&rect);
GetDlgItem(IDC_PIC)->MoveWindow(rect.left,rect.top,cx,cy,true);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我设置在listbox表里点击捕捉到图片的名字~~~~~~~~~~~~~
问题是,显示的图片是按照图片的大小,根本不关picture control的大小有关
我想问的是:怎么才能使load进去的图片,填充picture control 的大小,即小的拉伸,大的缩小
我学过用StretchBlt来用过,不过都是操作加载进程序的位图。希望有搞过的兄弟告诉我一下。。
...全文
相关推荐
演示用MFC的PICTURE CONTROL制作的指示灯
点击 power all on 按钮后,几个指示灯顺次变黄,一秒超时后变绿。 点击 power all off 按钮后,几个指示灯顺次变红,一秒超时后变灰。
MFC picture控件鼠标响应事件
MFC点击Picture控件内,响应鼠标点击事件,并将点坐标显示在EDIT控件内。
MFC Picture的使用
MFC Picture的使用 里面有用法与.h和.cpp 文件
使用VC在Picture控件中画坐标
使用VC在Picture控件中画坐标,是使用MFC在对话框中用Picture控件画坐标的一种解决办法
在VC中使用picture控件显示图片
在vc中 用picture控件 显示图片


