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

Вниз

Как заставить TPaintBox не стрираться при перекрытии его др. форм   Найти похожие ветки 

 
Tahion   (2003-01-25 21:28) [0]

В Canvas TPaintBox-a рисую что-нибудь. Если затем его переркыть др. формой, то то, что я нарисовал стирается. Как этого избежать?

Как можно в TImage нарисовать иконку, извлекаемую из exe при помощи ExtractIcon() так, чтоб ее фон был не белым, на цвета формы?
Image.Canvas.Pen.Color:=clBtnFace;
Image.Canvas.Brush.Color:=clBtnFace;
не помогает.


 
Юрий Зотов ©   (2003-01-25 22:04) [1]

1. Перенести код рисования в обработчик OnPaint.

2. Image1.Transparent := True. Или наложить маску.


 
Tahion   (2003-01-26 06:02) [2]

>>1. Перенести код рисования в обработчик OnPaint.Так не могу. Есть другой способ?

>>2. Image1.Transparent := True. Или наложить маску.
Transparent - не подходит. Я рисую иконку, и поэтому вместо белого внутри ее получается дырка. А как накладывать маску (желательно с куском кода)


 
Tahion   (2003-01-26 23:08) [3]

Неужели никто не знает?


 
jack128 ©   (2003-01-26 23:37) [4]

>>1. Перенести код рисования в обработчик OnPaint.Так не могу. >>Есть другой способ?
Почему?


 
Юрий Зотов ©   (2003-01-27 07:06) [5]

> А как накладывать маску

Маска - это та же картинка, но там, где нужно получить прозрачный цвет, находятся белые пиксели, а все остальные пиксели маски - черные. На самой же картинке в прозрачных местах должны быть черные пиксели. Рисование производится на временном битмапе в три приема (см. Canvas.CopyMode):
1. Копируется фоновое изображение (cmSrcCopy).
2. Накладывается маска (cnSrcAnd).
3. Рисуется само изображение (cmSrcPaint).
В итоге там, где на маске были белые пиксели, а на самой картинке - черные, получаем те же пиксели, что были на исходном фоновом изображении. Это и есть прозрачность. Осталось только перенести наш временный битмап на рабочую канву.


 
Anatoly Podgoretsky ©   (2003-01-27 07:50) [6]

Что бы посмотреть жанную технику скачай компонент TTrkBar с иоей страницы, сам компонент не представляет интереса, но там применена именно эта техника.


 
Tahion   (2003-01-28 09:08) [7]

Не нашел там такого:(
Можешь выслать?


 
Tahion   (2003-01-28 09:10) [8]

А, уже нашел


 
Tahion   (2003-01-29 07:15) [9]

Уже нашел



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
3-15397
Sergeyy
2003-01-21 11:37
2003.02.06
Копирование данных из массива в таблицу Access


14-15921
mate
2003-01-18 09:58
2003.02.06
Установка Delphi


1-15592
swinole
2003-01-29 04:44
2003.02.06
Dll


3-15443
Олег
2003-01-20 08:21
2003.02.06
Синтаксис цикла в хранимой процедуре, либо рекурсии


3-15487
VitGun
2003-01-20 18:18
2003.02.06
Номер строки в DBGrid