Вниз
Скачать: CL | DM;

Область отсечения канвы   Найти похожие ветки 

 
solo ©   (2003-09-16 21:23) [0]

Здравствуйте, возникла необходимость разобраться с использованием области отсечения контекста устройства. К примеру после вызова функции:

IntersectClipRect(Image1.Canvas.Handle, Left + 50, Top + 50, Left + Width - 50, Top + Height - 220);

устанавливаются новые границы области отсечения. Но вывод выполненный за пределами этой заново установленной области все равно отображается. Нужно сделать что-то еще?
Дайте если можно ссылку, где об этом можно почитать.

Спасибо.


 
Юрий Федоров ©   (2003-09-16 21:43) [1]

В данном случае речь идет о пересечении существующего региона с новым. Посмотри, что вернула функция, думаю, что ERROR (то есть текущий регион не определен).
Попробуй SelectClipRgn (регион предварительно нужно создать, например функцией CreateRectRgn)


 
solo ©   (2003-09-16 23:14) [2]

2 Юрий Федоров
Нет функция выполняется успешно, и область отсечения изменяется (проверял по свойству Canvas.ClipRect), но вывод за пределами новой области все равно идет.


 
MBo ©   (2003-09-17 07:38) [3]

Подумай о том, что за координаты используются в твоем варианте.

Все прекрасно работает:
IntersectClipRect(Image1.Canvas.Handle, 50, 50, Image1.ClientWidth - 50,
Image1.ClientHeight - 50);
Image1.canvas.Brush.color:=clred;
Image1.Canvas.Rectangle(0,0,200,200);



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
1-96167
fartuna
2003-09-16 11:58
2003.09.29
JEDI VCL 2.10 for D5-D7


1-96217
APTEMKA
2003-09-18 02:25
2003.09.29
Как избежать ошибки (2 вопроса)


3-96116
P0tia
2003-09-09 10:21
2003.09.29
Как узнать количество листов в Excel


3-96085
DECL
2003-09-09 20:34
2003.09.29
Подключение БД не через ODBC


14-96409
саша2
2003-09-12 11:26
2003.09.29
как понимать их




   Наверх