Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Удаление рисунка [D6]


Gomez ©   (2005-10-10 17:45:00) 

Предположим на компоненте Image нарисована линия красным цветом. Как ее стереть? Пробывал обрисовать ее карандашом со свойством pmNop. Но линия не исчезает. Подумал и понял, что наверно это законамерно. Ведь невидимый значит прозрачный. Каким образом можно решить данную проблему?


Gomez   (2005-10-12 09:50:00) [1]

Попутно возник такой вопрос, как выделить компонент Image на форме во время запуска программы. Он сливается с цветом формы, а никаких свойств типа BorderStyle я у него не обнаружил.


Leonid Troyanovsky   (2005-10-11 13:13:00) [2]


> Gomez   (11.10.05 09:24) [3]

> е. стереть ее видимо можно обрисовав цветом, совпадающим
> с Canvas.Color.


Canvas.Brush.Color

--
Regards, LVT.


Gomez   (2005-10-11 09:24:00) [3]

Появилась она при обработке событий MouseDown (начальная точка) и MouseUp (вторая точка). На компоненте Image создается объект Bitmap куда выводится рисунок. Рисование линии при этом происходит на с использованием свойства Canvas. Т. е. стереть ее видимо можно обрисовав цветом, совпадающим с Canvas.Color.


Anatoly Podgoretsky   (2005-10-10 19:31:00) [4]

Начнем с простого вопроса, а как она там появилась?


Leonid Troyanovsky   (2005-10-10 17:59:00) [5]


> Gomez   (10.10.05 17:45)  
> Предположим на компоненте Image нарисована линия красным
> цветом. Как ее стереть? Пробывал обрисовать ее карандашом



Например, нарисовать ее цветом фона.
Ежели это линия весьма сложная, то для восстановления первоначального
участка (прямоугольного) часто используют примерно такой трюк: перед
рисованием линии копируют участок под рисование в битмап,
рисуют линию,  а для "стирания" выводят на canvas тот самый
сохраненный битмап.
См. Canvas.CopyRect

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо