关于pDC->GetSafeHdc()释放的问题

jingjing_123 2010-08-18 09:42:28
CDC *pDC = GetDlgItem(IDC_WAVEFORM)->GetDC();
HDC hdc = pDC->GetSafeHdc();

if(!ReleaseDC(pDC) )//成功
{
printf("1 error code:%d\n",GetLastError());
}

if(!DeleteObject(hdc))
{
printf("2 error code:%d\n",GetLastError());//失败 返回:6
}


请问在这里 pDC和hdc 都需要释放吗?还是只释放pDC,应该怎么去理解?

...全文
584 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
周药师 2010-08-18
  • 打赏
  • 举报
回复
GetSafeHdc
ReleaseDC
配套使用就行了
Eleven 2010-08-18
  • 打赏
  • 举报
回复
GetDlgItem(IDC_WAVEFORM)->ReleaseDC(pDC);
wltg2001 2010-08-18
  • 打赏
  • 举报
回复
请问在这里 pDC和hdc 都需要释放吗?还是只释放pDC,应该怎么去理解?
==========
ReleaseDC(pDC)就行了,在Release(pDC)的过程中,会eleteObject掉和pDC相关联的HDC的。
hastings 2010-08-18
  • 打赏
  • 举报
回复
只要第一句就行了~~

15,980

社区成员

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

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