Problem z resultem

0

Mam takie pytanko, lecz najpierw skrotowy opis. Zaluzmy ze mam taka funkcje

function Narysuj(JakiesTamparametry): TBitmap;
var
Bmp: TBitmap;
begin
Bmp:=TBitmap.Create;
Bmp.Width:=IlesTam;
Bmp.Height:=IlesTam;

  • tutaj sobie cosik rysuje
    Result:=Bmp;
    Bmp.Free; * sporna linijka, dziala gdy jej NIE MA
    end;

Wszystko jest OK gdy kod jest bez linijki Bmp.Free, a gdy jest Bmp.Free to sa Access violation itp. (nawet wiem czemu). Teraz pytanie: Czy brak Bmp.Free nie bedzie zjadal pamieci, czy tez funkcja automatycznie zwolni zasoby? Moze ktos wie jak zrobic procedurke/funkcje rysowania czegos wg parametrow i zworcenia tego na Bitmapie. Probowalem z procedure Rysuj(Paramterty: Typ; var Bmp: TBitmap); ale dzialalo jeszcze gorzej.
-------[ Delphi 6 Rulez 4 Ever!, przynajmniej do czasu gdy naucze sie C++ :) ]------

0

spróbUj coś takiego

Proce......

Begin
try
twoje linie kodu
...
...
...
end;
except
Bmp.Free;
end;
end;

Jak to niezadziała mam w głowie jeszcze jeden pomysł.--Pozdrowienia dla całego FORUM !!!

Marco_99

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0