Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.01 c
7-96456
ctapik
2003-07-07 21:49
2003.09.29
Как остановить работу с ком портом?


1-96201
Relaxxx
2003-09-15 12:04
2003.09.29
TreeView


4-96493
Delf
2003-07-25 13:36
2003.09.29
Как узнать ProcessID зная дескриптор (hangle) окна


8-96308
avk
2003-06-03 20:26
2003.09.29
все те же стрелочки... на Canvas


6-96319
ZAN
2003-07-07 11:52
2003.09.29
Отправить писма больше 50kb в body ч-з MS Outlook





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский