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

Вниз

Как стереть 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.024 c
3-1080306252
russko
2004-03-26 16:04
2004.04.25
Работа с ДАТАМИ


14-1080823577
лена
2004-04-01 16:46
2004.04.25
1 апреля


1-1081527920
DeveloperUA
2004-04-09 20:25
2004.04.25
Руссификайия EXE


14-1080611561
Думкин
2004-03-30 05:52
2004.04.25
С днем рождения! 30 марта


1-1081573541
AmazedDexter
2004-04-10 09:05
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский