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

Вниз

Свойство TCanvas.ClipRect   Найти похожие ветки 

 
bkv   (2003-04-09 12:54) [0]

Подскажите как работать с TCanvas.ClipRect?
Читаю help: then set the ClipRect ....
Но оно - TCanvas.ClipRect - ReadOnly!
Как мне его поменять?


 
Skier ©   (2003-04-09 13:03) [1]

>bkv
Конечная цель какая ?


 
bkv   (2003-04-09 13:09) [2]

Надо перерисовать только часть изображения.


 
Skier ©   (2003-04-09 13:11) [3]

InvalidateRect(...) не устроит ?


 
bkv   (2003-04-09 13:23) [4]

Насколько я понимаю эта функция применима к Окну.
У меня такая ситуация:
В обработчике TPaintBox.Onpaint c помощью TPaintBox.canvas рисуется довольно громоздкое изображение.
Иногда нет необходимости перерисовывать его целиком.
Как ограничить область перерисовки?


 
Бурундук   (2003-04-09 13:25) [5]

SelectClipRgn(Canvas.Handle, YourClipRgn);


 
bkv   (2003-04-09 14:42) [6]

А как создать ClipRegion?


 
bkv   (2003-04-09 14:57) [7]

Я задаю SelectClipRgn но при выполнении ONpaint event Canvas все равно перерисовывает все изображение.


 
Бурундук   (2003-04-09 15:22) [8]

procedure XXX.XXXPaint(...);
begin
R := FDestCanvas.ClipRect;
IntersectRect(FinalClipRect, YourDesiredClipRect, R);
ClipRgn := CreateRectRgn(FinalClipRect.Left, ...);
SelectClipRgn(Canvas.Handle, ClipRgn);
DeleteObject(ClipRgn);

//здесь рисуешь

end;


 
bkv   (2003-04-09 15:38) [9]

Ничего не получается:
procedure XXX.ImagePaint(...);
begin
ClipRgn := CreateRectRgn(0,100,0,300);
SelectClipRgn(Image.Canvas.Handle, ClipRgn);
Image.Canvas.StretchDraw(rect(0,500,0,500), CurrBmp);
end;
- И ничего не рисуется! Убираю SelectClipRgn - всю нормально.



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
14-67451
Sviat_b
2003-04-04 16:16
2003.04.21
Можно ли безболезненно перейти с Delphi5 на Delphi7 ?


4-67615
{{{KOTOS}}}
2003-02-12 13:01
2003.04.21
как мне поймать клик мыши в windows а не в ФОрме?


1-67306
Мыш
2003-04-09 02:05
2003.04.21
access violation


14-67480
wnew
2003-04-01 00:09
2003.04.21
Дмитрий Менделеев и Юлиус Майер


4-67643
Andrew2
2003-02-21 16:11
2003.04.21
Загрузка процессора