![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
файл [D7, WinXP]
Кирилл © (2005-02-13 15:55:00)Уважаемые мастера! Помогите пожалуйста разобраться! Хочу чтобы картинка грузилась из файла, который не может быть просмотрен пользователем.
Вот код проги, создающей файл:
procedure TForm1.Button1Click(Sender: TObject);
var
bmp: TBitMap;
f: file of TBitMap;
begin
OpenDialog1.Execute;
SaveDialog1.Execute;
bmp:=TBitMap.Create;
bmp.LoadFromFile(OpenDialog1.FileName);
AssignFile(f, SaveDialog1.FileName+'.tex');
Rewrite(f);
Write(f, bmp);
closefile(f);
end;
А вот код проги, читающей файл:
procedure TForm1.FormCreate(Sender: TObject);
var
bmp: TBitMap;
f: File of TBitMap;
begin
bmp:=TBitMap.Create;
AssignFile(f, 'C:\New\tex1.tex');
Reset(f);
Read(f, BMP);
CloseFile(f);
Image1.Canvas.Draw(0,0,BMP);
end;
Выделенная строка вызывает динамическую ошибку. Никак не пойму, в чём тут дело?
panov (2005-02-13 16:01:00) [1]Тема вопроса не оформлена.
begin...end (2005-02-13 16:00:00) [2]> Кирилл © (13.02.05 15:55)
Проблема, по-видимому, в том, что в файле находится не изображение, как хотелось бы Вам, а указатель на экземпляр TBitmap. Посмотрите на размер используемого Вами файла - вероятно, его размер составляет 4 байта. Вряд ли изображение в формате BMP может занимать такой маленький объём, не правда ли? :-)
Используйте методы TBitmap.SaveToFile и TBitmap.LoadFromFile.
Kerk (2005-02-13 15:59:00) [3]А хочешь угадаю сколько байт файл занимает? Четыре? :)