我對Windows編程相當陌生,並且一直遵循Forger的Win32 API編程教程。我一直在試圖在窗口內繪製圖像。使用WinAPI繪製圖像:LoadBitmap有效,但LoadImage()不會?
說完看了類似的問題,這個代碼似乎加載一個位圖是正確的:
HBITMAP testImage == NULL;
case WM_CREATE:
testImage = (HBITMAP)LoadImage(NULL, L"C:\\ScreenSnip.bmp", IMAGE_BITMAP, 498, 304, LR_LOADFROMFILE);
if(testImage == NULL) {
MessageBox(NULL, L"NO IMAGE LOADED!", L"Error!", MB_ICONEXCLAMATION | MB_OK);
}
break;
我在上面的位置稱爲ScreenSnip.bmp的圖像,它的尺寸爲498 * 304。但是,LoadImage不起作用,並且testImage的值始終爲空。
我已經嘗試使用LoadBitmap()加載圖像作爲資源,並且工作,這就是爲什麼我沒有包括我的代碼的其餘部分。它似乎是LoadImage()上面導致的問題,但我不明白爲什麼。
任何人有任何想法?我正在使用Windows 7 64位上的VC++運行此操作。
你試過用'cxDesired'和'cyDesired'設置爲零?在文檔中沒有跡象表明除了圖標或光標以外,這些「所需的大小」參數是允許的。 –
我已經嘗試過,它沒有任何區別,我很害怕! – BeneGal
*如果函數失敗,返回值爲NULL。要獲得擴展的錯誤信息,請調用GetLastError。* – chris