Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

файл [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]

А хочешь угадаю сколько байт файл занимает? Четыре? :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо