是否有必要在DeleteObject()之前调用SelectObject()?

时间:2015-06-25 18:06:40

标签: c winapi gdi

我有一个HBITMAP被选入内存DC。

我知道在调用内存DC上的DeleteObject()之前,我应该在HBITMAP上调用DeleteDC(),但是还需要使用SelectObject()来选择旧的HBITMAP {1}}在调用HBITMAP之前进入内存DC(因此选择了我要删除的DeleteObject()

1 个答案:

答案 0 :(得分:1)

是的,这是必要的;如果你不这样做有两个问题:

  • DC的原始位图将泄露
  • 位图将被双重释放,因为DC会在销毁时尝试删除它