Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.29;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.022 c
1-96165
First_May
2003-09-16 10:26
2003.09.29
Класс


3-96133
P0tia
2003-09-08 16:06
2003.09.29
Excel


9-96048
Juster~
2003-03-22 21:11
2003.09.29
Программист или любитель?


1-96204
falcan
2003-09-15 19:45
2003.09.29
Злобные эдиты и противные массивы


3-96082
Dima(Other)
2003-09-09 09:40
2003.09.29
ADO и DLL