У меня есть Растровое изображение, которое я хочу загрузить динамично. Но я не могу загрузить его.
CBitmap bmp;
bmp.LoadBitmap("c:\\aeimg");
это, кажется, не работает. Может кто-то помогать мне.
Спасибо.
Вы также можете попробовать что-то вроде этого:
CImage image;
image.Load(_T("C:\\image.png"));
CBitmap bitmap;
bitmap.Attach(image.Detach());
Чтобы загрузить растровое изображение из файла, вы хотите использовать LoadImage
с флагом lr_loadFromFile
.
CImage не работает с PNG в прошлый раз, когда я пробовал / проверен. Посмотрите на CXImage - http://www.codeproject.com/kb/graphics/cximage.aspx .
Это может быть так же просто, как вы забыли сбежать на обратную косание. Вместо
bmp.LoadBitmap("c:\aeimg");
используйте
bmp.LoadBitmap("c:\\aeimg");
в противном случае вы передаете неверный путь к методу LoadTmap.
Согласно документации CBitmap: LoadBitmap ()
функция принимает идентификатор ресурса растрового изображения или идентификатор ресурса растрового изображения.
Вы не можете указать путь к файлу растрового изображения.
Например.
MyProject.rc
------------
MYBMP BITMAP "res\myimage.bmp"
и убедитесь, что в resource.h нет записи MYBMP, иначе во время предварительной обработки он будет заменен идентификатором, и в конечном итоге LoadBitmap ()
завершится ошибкой, поскольку приложение не может найти ресурс как FindResource ()
не работает.
Теперь сделайте следующее:
CBitmap bmp;
bmp.LoadBitmap(L"MYBMP");
Он определенно загрузит растровое изображение.