Картинка из ресурса

  • Автор темы ProgeRock
  • Дата начала
P

ProgeRock

#1
Delphi 2007

Почему не работает код?
Код:
procedure q;
var
Img: TBitmap;
begin
Img:= TBitmap.Create;
Img.Handle := LoadBitmap(HInstance,'1');
Form1.Image1.Canvas.Draw(0, 0, Img);
Img.Free;
end;
 
04.09.2006
2 566
3
#6
valid (англ.) - действительный, т.е. правильно установлен? Почему на NULL не проверяете его?

а, вот оно что... HInstance в Delphi глобален. Тогда вопрос отпадает... Но в отладочных целях на 0 можно проверить.

Что возвращает LoadBitmap?
 
P

ProgeRock

#12
Кие ваще картинки могут быть в ресурсе, чеб их так использовать?
 
P

ProgeRock

#13
Код:
procedure q;
var
Img: TBitmap;
begin
Img:= TBitmap.Create;
Img.Handle := LoadBitmap(HInstance,'1');
Form1.Image1.Canvas.Draw(0, 0, Img);
Img.Free;
end;
Процедура не находится в модуле с формой.
Вызывается из модуля с формой событием Button1Click.
Ресурс включен в модуль с процедурой.
Image окрашивается в белый, картинки нет!
Почему не работает?
 
P

ProgeRock

#14
А имя было нормальное "Shadow.res".
'1' (В коде) - название картинки в ресурсе.
Если написать так Img.LoadFromResourceName(HInstance, "MYBITMAP") выдает ошибку
[DCC Error] Unit2.pas(22): E2038 Illegal character in input file: '"' (#$22)

Если написать так Img.LoadFromResourceName(HInstance, 'MYBITMAP'), говорит, че не находит моего ресурса.
 
P

ProgeRock

#15
Это в смысле файл ресурса называется MYBITMAP.res, так пробовал, не сработало.
У меня в ресурсе несколько картинок, как же тогда таким методом обращаться к конкретной?
 
P

ProgeRock

#17
AUCH, не увидел деталь в ресурсе (BITMAP), сработало, спасиба.