Главная страница
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.033 c
1-96169
big_bugzy
2003-09-16 12:17
2003.09.29
Как в WideString записать длинную строку (~4500 символов)?


1-96211
Shaman
2003-09-17 20:18
2003.09.29
Что сделать, чтобы дельфя не перекомпиливала модули


1-96244
Rain_km
2003-09-17 16:17
2003.09.29
mp3


1-96171
servs
2003-09-15 18:33
2003.09.29
проблемы с СОМ под 9х


3-96142
BanderLog
2003-09-08 14:15
2003.09.29
IBase - очграничение пользователей