代码如下:
pStaic=(CStatic*)GetDlgItem(IDC_STATIC);
hbitmap=(HBITMAP)::LoadImage (::AfxGetInstanceHandle(),"1.bmp",
IMAGE_BITMAP,0,0,LR_LOADFROMFILE);//|LR_CREATEDIBSECTION);
hbmp.Attach(hbitmap);
hbmp.GetBitmap(&bm);
dcMem.CreateCompatibleDC(GetDC());
poldBitmap=(CBitmap*)dcMem.SelectObject(hbmp);
CDC *pDC = pStaic->GetDC();
pStaic->GetClientRect(&lRect);
pDC->StretchBlt(lRect.left ,lRect.top ,lRect.Width(),lRect.Height(),
&dcMem,0 ,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
dcMem.SelectObject(&poldBitmap);
pStaic->ReleaseDC(pDC);
这个代码是在按钮事件代码中的,就是我触发了button,就在static text中显示了一幅位图,但是有个问题,就是位图不能一直显示,如果我再做其他的事情,例如拖动一下对话框什么的,图片就立刻没了,这是什么原因
pStaic=(CStatic*)GetDlgItem(IDC_STATIC);
hbitmap=(HBITMAP)::LoadImage (::AfxGetInstanceHandle(),"1.bmp",
IMAGE_BITMAP,0,0,LR_LOADFROMFILE);//|LR_CREATEDIBSECTION);
hbmp.Attach(hbitmap);
hbmp.GetBitmap(&bm);
dcMem.CreateCompatibleDC(GetDC());
poldBitmap=(CBitmap*)dcMem.SelectObject(hbmp);
CDC *pDC = pStaic->GetDC();
pStaic->GetClientRect(&lRect);
pDC->StretchBlt(lRect.left ,lRect.top ,lRect.Width(),lRect.Height(),
&dcMem,0 ,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
dcMem.SelectObject(&poldBitmap);
pStaic->ReleaseDC(pDC);
这个代码是在按钮事件代码中的,就是我触发了button,就在static text中显示了一幅位图,但是有个问题,就是位图不能一直显示,如果我再做其他的事情,例如拖动一下对话框什么的,图片就立刻没了,这是什么原因
解决方案 »
- IShellLink打开文件夹
- 双显示器环境中,如何通过API将一个正在主屏幕上运行的全屏幕程序移动到副屏幕上
- 请教如何让用一个对话框D1中的Check Box 将另外一个对话框D2中的按钮B1变灰(禁止)或激活(见下图)
- 急!请教各位大侠,如何在COM组件方法中返回VARIANT或ARRAY?
- 中秋节到了,祝大家节日愉快,阖加团圆!
- ftp的list
- 如何将CScrollView作为子窗口加入到自己的窗口中
- 请问一个关于Static控件的问题
- 如何不显示连接到SQL Server超时出现的重新登录对话框
- 如何才能使程序常驻内存运行?
- CView Create 什么意思
- 用fopen()打开隐藏文件失败,怎么办啊
写在Button事件中:
CStatic *p=(CStatic *)GetDlgItem(IDC_P);
HBITMAP hBitmap=(HBITMAP)::LoadImage (::AfxGetInstanceHandle(),_T("1.bmp"), IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
p->SetBitmap(hBitmap);
注意,我用的ID是IDC_P,改一下就行了。
{
// TODO: Add extra validation here
CStatic *p=(CStatic *)GetDlgItem(IDC_STATIC);
HBITMAP hBitmap=(HBITMAP)::LoadImage (::AfxGetInstanceHandle(),_T("1.bmp"), IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
p->SetBitmap(hBitmap);}
第一:在控件工具箱选控件时,用picture control而不要用static Text控件
第二:在picture control控件的type属性中选“Bitmap"。
老师要是说你你就让他来这面发帖子
我们收拾他