Vital_K |
Отправлено: 15.06.2006, 09:49 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Здравствуйте
подскажите плиз как очистить image (с загруженным рисунком)
|
|
Doga |
Отправлено: 15.06.2006, 17:49 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
Width = 0;
|
|
Werti |
Отправлено: 15.06.2006, 17:52 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 30
|
QUOTE (Doga @ 15/06/2006, 17:49) | Width = 0; |
Сузил картинку?) |
|
Doga |
Отправлено: 15.06.2006, 18:47 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
Попробуйте, хотя бы
|
|
Gedeon |
Отправлено: 16.06.2006, 08:18 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
NULL присвоить св-ву Picture.
|
|
Konstantine |
Отправлено: 16.06.2006, 10:09 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
а он удалит его при этом?
в смысле память освободит?
|
|
Gedeon |
Отправлено: 16.06.2006, 12:30 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
да
Смотрим обьявление
CODE | TImage = class(TGraphicControl)
...
property Picture: TPicture read FPicture write SetPicture;
... |
функция
CODE | procedure TImage.SetPicture(Value: TPicture);
begin
FPicture.Assign(Value);
end; |
ведет сюда
CODE |
procedure TPicture.Assign(Source: TPersistent);
begin
if Source = nil then
SetGraphic(nil)
else if Source is TPicture then
SetGraphic(TPicture(Source).Graphic)
else if Source is TGraphic then
SetGraphic(TGraphic(Source))
else
inherited Assign(Source);
end;
|
и вот при NULL
CODE |
procedure TPicture.SetGraphic(Value: TGraphic);
var
NewGraphic: TGraphic;
begin
NewGraphic := nil;
if Value <> nil then
begin
NewGraphic := TGraphicClass(Value.ClassType).Create;
NewGraphic.Assign(Value);
NewGraphic.OnChange := Changed;
NewGraphic.OnProgress := Progress;
end;
try
FGraphic.Free;
FGraphic := NewGraphic;
Changed(Self);
except
NewGraphic.Free;
raise;
end;
end;
|
|
|
Konstantine |
Отправлено: 16.06.2006, 13:14 |
|
Мастер участка
Группа: Модератор
Сообщений: 545
|
а, ну да
даже сам не знал, пасиб
|
|