Главная страница
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.016 c
1-67324
Berzercer
2003-04-09 12:34
2003.04.21
как задать переменной TTime конкретное значение


1-67350
DenisS
2003-04-09 16:20
2003.04.21
Как заставить выпасть ComboBox по кнопке Enter?


1-67267
$Hic0
2003-04-11 12:19
2003.04.21
byte2bin


3-67086
Будущий мастер
2003-04-01 19:13
2003.04.21
Проблемы с установкой Oracle 8 в Windows XP


1-67234
Вася
2003-04-10 10:29
2003.04.21
Консольное приложение и timer