-1
我有一個窗口使用Win32和消息處理程序我有一個WM_PAINT的情況,以便在窗口中繪製位圖。然而,在運行位圖不繪製,有什麼我失蹤?我需要手動發送WM_PAINT消息嗎?位圖不在Win32中繪製C++
這裏是我的代碼:http://pastebin.com/bi48LB0U
,這是WM_PAINT情況:
case WM_PAINT:
hDC = BeginPaint(hwnd, &ps);
bmp = LoadBitmap(hInst, L"C:\\example.bmp");
memDCExercising = CreateCompatibleDC(hDC);
SelectObject(memDCExercising, bmp);
BitBlt(hDC, 100, 100, 500, 500, memDCExercising, 0, 0, SRCCOPY);
DeleteDC(memDCExercising);
DeleteObject(bmp);
EndPaint(hwnd, &ps);
break;
'assert(bmp!= NULL);' –
註定失敗,LoadBitmap()接受資源ID,而不是路徑名。你需要LoadImage()。是的,總是檢查winapi返回值,斷言()至少。 –
如何從我的文件名中創建資源ID? – Pottsiex5