我想在 按钮上 放置一盒 位图,但是 不知道 为什么失败了,编译通过执行不了!我的程序 是这样的
全局变量:BITMAP m_tagBitmap;
CBitmap m_iBitmap;
CDC m_dcPaint;
在OnIndialog中的程序 如下:
BOOL bRet = m_iBitmap.LoadBitmap(MAKEINTRESOURCE(IDB_BACKMAIN));
if ( TRUE == bRet )
{
// Get Main Picture's Bitmap Struct
bRet = m_iBitmap.GetBitmap(&m_tagBitmap);
}
CPaintDC iPaintDC(this);
CRect rectClient;
BITMAP tagBmp;
this->GetClientRect(rectClient);
m_iBitmap.GetBitmap(&tagBmp);
m_dcPaint.CreateCompatibleDC(&iPaintDC);
m_dcPaint.SelectObject(&m_iBitmap);
//RECT rect;
CDC * pDC = m_btn.GetDC();
pDC->BitBlt(0, 0, tagBmp.bmWidth, tagBmp.bmHeight, &m_dcPaint, 0, 0, SRCCOPY );
全局变量:BITMAP m_tagBitmap;
CBitmap m_iBitmap;
CDC m_dcPaint;
在OnIndialog中的程序 如下:
BOOL bRet = m_iBitmap.LoadBitmap(MAKEINTRESOURCE(IDB_BACKMAIN));
if ( TRUE == bRet )
{
// Get Main Picture's Bitmap Struct
bRet = m_iBitmap.GetBitmap(&m_tagBitmap);
}
CPaintDC iPaintDC(this);
CRect rectClient;
BITMAP tagBmp;
this->GetClientRect(rectClient);
m_iBitmap.GetBitmap(&tagBmp);
m_dcPaint.CreateCompatibleDC(&iPaintDC);
m_dcPaint.SelectObject(&m_iBitmap);
//RECT rect;
CDC * pDC = m_btn.GetDC();
pDC->BitBlt(0, 0, tagBmp.bmWidth, tagBmp.bmHeight, &m_dcPaint, 0, 0, SRCCOPY );
解决方案 »
- 请教WaitForMultipleObjects返回值,怎么不能是WAIT_OBJECT_0 +1
- CString 转换为unsigned char数组
- 切分窗口间如何传递消息?
- *******************新手简单问题仔细回答,有关win32的dll的问题***************
- 求directshow的下载地址啊....微软的主页上找了N久没找到..
- 如何检测计算机是否在互联网上?
- 怎样在控件中使用控件
- 关于DLL调用的绝对菜鸟问题
- 请教文字光标定位的问题
- 两幅很暗的图片,能隐隐约约能看清人脸,用什么方法可以得到两幅图的差距?
- mciSendString无法播放单声道的mp3?
- 求有曲线界面的任务管理器代码.
CBitmapButton m_add1;
2、在.cpp中
DDX_Control(pDX, IDC_BUTTON6, m_add1);3、在OnInitDialog()中
m_add1.LoadBitmaps(IDB_ADDRESS,NULL,NULL,NULL); //钮加载图片
这种方法是可以的。也可以像2楼那样,挺方便
用法上面已经很详细了
如果还需要其他的建议重绘,自己派生一个新类,重载OnDraw()函数