Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Вниз

Как стереть Image.Picture.Graphic?   Найти похожие ветки 

 
Kraks   (2003-11-19 08:33) [0]

Мне необходимо очистить картинку TImage. Здесь в форуме нашёл темы про очистку Canvas, но у меня в имадже могуть лежать bmp, jpg, поэтому к Canvas-у TBitmap я добраться не могу. Ну, точнее, могу. Надо проверять, что за картинка и в зависимости от этого очищать Canvas либо Bitmap-а, либо TJpegImage. А нельзя ли очистить Image.Picture.Graphic? В других форумах говорили, что писать Image.Picture.Graphic := nil некорректно (только не пояснили, почему - не просвятите? :) ). Советовали изменять ширину и высоту Graphic до 0 и обратно, но как-то это всё...


 
MBo ©   (2003-11-19 08:40) [1]

Image.Picture.Graphic := nil  - корректно.


 
Kraks   (2003-11-19 22:35) [2]

А мне в форуме SQL.ru - Delphi сказали, что будет утечка памяти, хотя у себя в примере пробовал - вроде работает...


 
Mihey ©   (2003-11-20 01:06) [3]

Да уж, хорошо бы Image.Picture.Graphic.Free или с проверкой, чтобы наверняка If Assigned(Image.Picture.Graphic) then
Image.Picture.Graphic.Free, а потом уже MBo [1].


 
default ©   (2003-11-20 01:11) [4]

а может посмотреть, что в методе который пишет в это свойство?
MBo не просто так же пишет


 
Kraks   (2003-11-20 08:09) [5]

Ага. Я уже выяснил. )) Именно так:

if Assigned(Image.Picture.Graphic) then
begin
 Image.Picture.Graphic.Free;
 Image.Picture.Graphic := nil;
end;


 
MBo ©   (2003-11-20 08:33) [6]

Протрассировав
Image.Picture.Graphic := nil  
или просто заглянув в исходники, видим
FGraphic.Free;
и соответственно бессмысленность "Именно так:..."

BTW, того же результата добьемся, просто сделав
Image.Picture := nil;


 
Vlad1 ©   (2003-11-20 22:07) [7]

Разумное слово только от MBo: Image.Picture := nil;. У меня в целом ряде программ есть кнопка "Очистить картинку" и код именно такой: Image.Picture := nil;. Не думал, что для кого-то это проблемма.


 
Kraks   (2003-11-21 08:04) [8]

А ведь и правда. Free, nil не работает! Буду делать так же. )) Спасибо.


 
Галина   (2004-01-22 08:44) [9]

Спасибо большое за нежданную помощь...



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

Форум: "Media";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.036 c
4-1076996765
lucky4me
2004-02-17 08:46
2004.04.25
как работать с VersionInfo?


1-1081159093
Checist [root]
2004-04-05 13:58
2004.04.25
Вытащить сылку из .lnk файла


1-1081515243
LeShick
2004-04-09 16:54
2004.04.25
Скопировать вчерашний файл


8-1068846700
BlaMyr
2003-11-15 00:51
2004.04.25
Миниатюры графических файлов.


8-1071874628
Jack
2003-12-20 01:57
2004.04.25
Мастера, Нужен алгоритм ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский