Форум: "Начинающим";
Текущий архив: 2008.03.23;
Скачать: [xml.tar.bz2];
ВнизTCanvas и регионы Найти похожие ветки
← →
Darvin © (2008-02-27 15:27) [0]Здравствуйте!
Мне нужно сделать следующее: при прорисовке на канве определить регион допустимой прорисовки, например, если канва размером 800х600, то я хочу рисовать на ней в прямоугольнике (100, 100, 300, 200), а чтобы все попытки нарисовать за его пределами игнорировались бы. Потом определять другой регион на этой же канве и т.д.
Полагаю, что это можно сделать с помощью регионов API, но не получается. Делаю так:with dgPages.Canvas do begin
SetRectRgn ( dgPages.Canvas.Handle, Left, Top, Right, Bottom );
...
прорисовка
...
SetRectRgn (dgPages.Canvas.Handle, 0, 0, dgPages.Width, dgPages.Height );
end;
1. Правильно ли я полагаю, что такое возможно?
2. Что я делаю не так?
← →
Palladin © (2008-02-27 15:39) [1]1. правильно
2. вызываешь ерунду, не в тему и не с теми параметрами, хоть бы в справке глянул что такое SetRectRgn
MyRgn := CreateRectRgn(100,100,200,200);
SelectClipRgn(Canvas.Handle,MyRgn);
...
прорисовка
...
SelectClipRgn(Canvas.Handle,0);
DeleteObject(MyRgn);
← →
Darvin © (2008-02-27 15:48) [2]>Palladin © (27.02.08 15:39) [1]
супер, спасибо
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.03.23;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c