gpt4 book ai didi

c++ - Win32 C++ "Old Bitmap"可以重用吗?

转载 作者:行者123 更新时间:2023-11-30 04:07:15 25 4
gpt4 key购买 nike

我想知道在使用 HDC 时,当我选择回原始位图时,我可以再次使用它吗?喜欢...

HBITMAP hbmOld;

// FIRST
hbmOld = (HBITMAP)SelectObject(hdcMem, bitmap.hbmItemOverlay);
Rectangle(hdcMem, 0, 0, MAP_WIDTH*BLOCK_SIZE, MAP_HEIGHT*BLOCK_SIZE);
SelectObject(hdcMem, hbmOld);

// SECOND
stockBrush = GetStockBrush(BLACK_BRUSH);
hbmOld = (HBITMAP)SelectObject(hdcMem2, bitmap.hbmMap);
Rectangle(hdcMem2, 0, 0, bitmap.bmMap.bmWidth, bitmap.bmMap.bmHeight);
SelectObject(hdcMem2, hbmOld);

我想知道这是否有效。它编译得很好并且可以工作,但我想知道这样做是否是不好的编程习惯?

最佳答案

在我看来,这似乎非常好。

您还可以测试内存泄漏以确保 100% 确定。

我个人使用GDIView去做这个。关键是最后一列中的句柄数要保持不变。如果您在使用方面需要帮助,请发表评论。如果其他人可以提出更好或更易于使用的替代方案,我将非常欢迎。

最好的问候。

关于c++ - Win32 C++ "Old Bitmap"可以重用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22567600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com