谁能帮我看看,这段程序为什么出错!

qydc 2005-11-01 07:44:27

BOOL CTestdibDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default

CBitmap m_bmpTest;
BOOL bErr = m_bmpTest.LoadBitmap(IDB_BITMAP_TEST);
if(m_bmpTest.m_hObject ==NULL)
{
return CWnd::OnEraseBkgnd(pDC);
}

BITMAP ddbinfo;
m_bmpTest.GetBitmap(&ddbinfo);

BITMAPINFO dibinfo;
int nErr = GetDIBits(pDC->GetSafeHdc(),m_bmpTest,0,ddbinfo.bmHeight,NULL,&dibinfo,DIB_RGB_COLORS);
//执行上面这个函数总是返回0,但执行GetLastError()查错误码,错误码表示操作成功;
if(nErr==0)
{
DWORD dwLastErr = GetLastError();
AfxMessageBox("Error");
CWnd::OnEraseBkgnd(pDC);
}

return TRUE;
}
...全文
77 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ddmor 2005-11-02
  • 打赏
  • 举报
回复
对BITMAPINFO结构的成员做输入输出参数,需要填写做获取数据的依据。
菜牛 2005-11-02
  • 打赏
  • 举报
回复
BITMAPINFO的结构成员都要填写的。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧