GetUpdateRect

GetUpdateRectで、InvalidateRectなどで指定されたりして出来た無効領域のRECTを取得できる。

GetUpdateRect function (winuser.h) - Win32 apps | Microsoft Learn

ScrollWindowでスクロールして出来た白い描画されてない領域のRECTを、InvalidateRectに指定して、WM_PAINT側でGetUpdateRectでそれを取得し、そこに残りの描画すべきビットマップの一部を描画する。
GetUpdateRect.cppにて、WM_HSCROLLは、

こうする。
WM_VSCROLLは、

こうする。
WM_PAINTは、

こう書く。
GetUpdateRectはBeginPaintより前に置く。

"Update"って入ってるので、app.manifestが要る。
"Update"って入ってるので、app.manifestが要る。

"Update"って入ってるので、app.manifestが要る。

左上
左上

左上。

右上
右上

右上。

右下
右下

右下。

左下
左下

左下。
これで、スクロールバーでビットマップをスクロールして見ることが出来た。

Sample/winapi/GetUpdateRect/GetUpdateRect/src/GetUpdateRect at master · bg1bgst333/Sample · GitHub