Почему не рисуется изображение в Picture Contol WINAPI?

Проблема в том, что если картинка загружается при первом входе WM_PAINT (неявный), то она загружается и больше не меняется, но мне нужно менять картинку в зависимости от условия, потому изначальная загрузка картинки не подходит. А если я ставлю условие на выполнение действий в сообщении WM_PAINT, то картинка просто не загружается в Picture Control. Можете подсказать, пожалуйста, в чем может быть проблема? case WM_PAINT:

    if (humidity != INT_MAX)
    {
        BITMAP bm;
        PAINTSTRUCT ps;
        HBITMAP bitmap;

        if (humidity <= 30)
        {
            bitmap = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_BITMAP2));
        }
        else if (humidity > 30 && humidity <= 70)
        {
            bitmap = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_BITMAP3));
        }
        else
        {
            bitmap = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_BITMAP1));
        }

        HDC hdc = BeginPaint(hPicture, &ps);
        HDC hdcMem = CreateCompatibleDC(hdc);
        HGDIOBJ hbmOld = SelectObject(hdcMem, bitmap);
        GetObject(bitmap, sizeof(bm), &bm);
        BitBlt(hdc, 0, 0, bm.bmWidth, bm.bmHeight, hdcMem, 0, 0, SRCCOPY);
        SelectObject(hdcMem, hbmOld);
        DeleteDC(hdcMem);
        EndPaint(hPicture, &ps);
    }

    return TRUE;

Ответы (0 шт):