![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TBitmap.LoadFromResouceName - истина где-то рядом? [D5, Win95/98]
Vcoder © (2002-04-07 12:33:00)Дано: файл bmps.rc:
Bmp1 BITMP "beany.bmp"
Bmp2 BITMP "intl_no.bmp"
Bmp3 BITMP "w.bmp"
В программе загружаем картинку, например:
procedure TForm1.Button1Click(Sender: TObject);
var
MyRes : TResourceStream;
begin
MyRes:=TResourceStream.Create(HInstance,"Bmp1",PChar("BITMP"));
try
Image1.Picture.Bitmap.LoadFromStream(MyRes);
finally
MyRes.Free;
end;
end;
И все работает. НО!При попытке загрузить так:
Image1.Picture.Bitmap.LoadFromResouceName(HInstance,"BMP1");
вызывает исключение EResNotFound "Resource BMP1 not found".
Пробовал нумеровать ресурсы и использовать функциюBitmap.LoadFromResouceID(HInstance,1)- вызывает исключение "Access Violation at adress...".
И тут я подумал: Ведь в TResourceStream.Create мы указываем не только имя ресурса ("Bmp1"), но и тип ("BITMP"). Может и тут надо каким-то образом указать тип ресурса? Пробовал "BITMP\BMP1", "BITMP/BMP1" - ноль. ResNotFound и хоть ты тресни. Кстати, когда я назвал ТИП ресурса "BITMAP" (естественно, перекомпилировав .res файл), у меня вообще перестало работать, включая и первый способ.
Может кто-нибудь прольет свет на эти странности?
Vcoder (2002-04-10 18:54:00) [1]1) Громоздко
2) Хочу получить ответ, почему не работает LoadFromResouceName
[MC]NuClon (2002-04-08 20:25:00) [2]А чем первый способ не нравится??? 8)
Vcoder (2002-04-08 20:05:00) [3]Ну неужели никто не знает ?!?