以下のコードで使用するSetBkMode(hdc, TRANSPARENT);と、メイン ウィンドウのサイズを変更すると (したがって、子が WM_PAINT メッセージを受信すると)、次の効果が得られます。

問題は、メイン ウィンドウのサイズを変更すると、「Find:」の古い領域が消去されてしまうことです。しかし、それはただそこにとどまります。
を使用しなければSetBkMode(hdc, TRANSPARENT);、この問題はありません。次のようになります。

、つまり、背景が白です。さらに、 を使用するSetBkMode(hdc, TRANSPARENT);と、メイン ウィンドウのサイズを変更する前と同じように見えます。SetBkMode(hdc, TRANSPARENT);だから私はここで働くとは思わない。
これhwndは style を持つ静的な子ですSS_BITMAP。
この問題が発生する理由を知っていますか?
switch (message) {
case WM_PAINT:
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hwnd, &ps);
SelectObject(hdc, gDefaultGuiFont);
SetBkMode(hdc, TRANSPARENT);
RECT rc;
GetClientRect(hwnd, &rc);
DrawText(hdc, _TR("Find:"), -1, &rc, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
EndPaint(hwnd, &ps);
return 0;
.............
}