Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.12;
Скачать: CL | DM;

Вниз

Простейший вывод картинки   Найти похожие ветки 

 
VasRog   (2004-09-18 12:53) [0]

Не получается почему-то. Вот листинг:
procedure TForm1.FormActivate(Sender: TObject);
var
EHMap: TBitmap;
begin
with form1.Image1.Canvas do
begin
 Pen.Color:=colorbox1.Selected;
 Pen.Style:= psDashDot;
 EHMap:= TBitmap.Create;
 try
  EHMap.LoadFromFile("EarthMapm.bmp")
 except
  EHMap.free;
 end;  // try
end;  // with
end;
Заместо картинки остается белое пятно.Сначала думал, что исключение срабатывает, но ничего не произойдет, если убрать try except.
Помогите найти ошибку, please.


 
Kind   (2004-09-18 14:27) [1]

А где код который отображает саму картинку?
Ты её только загрузил и всё. Canvas.Draw используй


 
Рыба ©   (2004-09-18 17:43) [2]

>VasRog  (18.09.04 12:53)

try
 EHMap.LoadFromFile("EarthMapm.bmp")
except
 EHMap.free;
end;  // try

В этом случае выделенная под картинку память освободится только в случае исключения. Т.е. на лицо прямая утечка памяти. Вместо этого надо писать finally, чтобы память в любом случае освободилась. Твой пример можно переписать так:

procedure TForm1.FormActivate(Sender: TObject);
var EHMap: TBitmap;
begin
 with Image1.Canvas do
 begin
   Pen.Color:= colorbox1.Selected;
   Pen.Style:= psDashDot;
 end;
 EHMap:= TBitmap.Create;
 try
   try
     EHMap.LoadFromFile("EarthMapm.bmp");
     Image1.Canvas.Draw(0, 0, EHMap);
   except
     ShowMessage("Произошла ошибка. Возможно файл не найден.");
   end;  // try-expect
 finally
   EHMap.free;
 end;  // try-finally
end;


 
VasRog   (2004-09-18 18:23) [3]

Огромное спасибо.



Страницы: 1 вся ветка

Текущий архив: 2004.12.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
14-1101190317
Rand
2004-11-23 09:11
2004.12.12
Оригинальные кнопочки!


14-1100809808
OneFragLeft
2004-11-18 23:30
2004.12.12
Про винты.


6-1092257951
Piter
2004-08-12 00:59
2004.12.12
Посоветуйте с выбором компонента для работы с TCP


3-1099996633
Квэнди
2004-11-09 13:37
2004.12.12
Ошибка Mysql Client


14-1101318065
ОлегЪ
2004-11-24 20:41
2004.12.12
Моя работа