Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.26;
Скачать: CL | DM;

Вниз

Массив HRGN   Найти похожие ветки 

 
webpauk   (2006-10-12 15:23) [0]

type
TmyRec = record
X, Y, Z: Integer;
Rgn: HRGN;
end;
var
fArr: array of TmyRec;

procedure Example;
var
I: Integer;
fArr3: array[0..2] of Tpoint;
Z: Integer;
begin
Z:=3000+Random(1000);
SetLength(fArr, Z);
Farr3[0]:=Point(0, 0);
Farr3[1]:=Point(10, 0);
Farr3[2]:=Point(0, 10);

for I := 0 to Z-1
begin
 fArr[I].X:=10;
 fArr[I].Y:=10;
 fArr[I].Z:=10;
 fArr[I].RGN:=CreatePolygonRgn(fArr3, 3, ALTERNATE)
end;
end;


вопрос такой: при частом обращении к procedure Example выскакивает ошибка "Canvas does not allow drawing".
Я так думаю из-за того, что память не очищается. SetLength(fArr, 0) - не помогает. A - DleteObject(fArr[I].RGN) - выскакивает ошибка.


 
MBo ©   (2006-10-12 15:29) [1]

Зачем тебе несколько тысяч регионов?
Это растрата места в таблице дескрипторов и ценной системной памяти


 
webpauk   (2006-10-12 15:32) [2]


> MBo ©   (12.10.06 15:29) [1]

пишу программу графически пароль. Там определяется попадание курсора в заданный регион. Регион определяется 3 точками. Точки всё время меняются и задаются 20 фигурами


 
webpauk   (2006-10-12 15:51) [3]

help


 
Ketmar ©   (2006-10-12 16:53) [4]

выкинь регионы и проверяй непосредственно координаты. математика спасёт ОРД.


 
webpauk   (2006-10-12 16:59) [5]


> Ketmar ©   (12.10.06 16:53) [4]

спасиб
уже допер



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
15-1162896300
Голицын
2006-11-07 13:45
2006.11.26
Merlin и БК


15-1162622446
ArtemESC
2006-11-04 09:40
2006.11.26
Установка FreeBSD


2-1162800811
Shopot
2006-11-06 11:13
2006.11.26
DLL.


2-1163061109
svt
2006-11-09 11:31
2006.11.26
Подскажите пожайлусата как можно перебирать слова


8-1145012568
QuickFinder
2006-04-14 15:02
2006.11.26
Сгенерировать матрицу текстовых символов из картинки