Вниз
Скачать: CL | DM;

Как сохранить регион   Найти похожие ветки 

 
ARTEMKA   (2003-10-25 16:52) [0]

Мастера подскажите , у меня есть регион

var
h:HRGN;
begin
h:=BitmapToRegion(t,clred);

Вопрос- Как сохранить регион в файле чтоб заного не создавать его. и если это можно то как сохранить его в ресурсах
Спасибо


 
ARTEMKA   (2003-10-25 17:14) [1]

Мастера подскажите плзз


 
Asteroid ©   (2003-10-25 17:17) [2]

Боюсь, что никак. Значение h - это лишь системный хендл, а где как регион выглядит в памяти известно лишь самой системе.


 
wicked ©   (2003-10-25 17:34) [3]

GetRegionData...


 
ARTEMKA   (2003-10-25 17:49) [4]

>>wicked
а можно подробнее плз, что за параметры dwCount lpRgnData и что возвращеет, как далее это использовать

Спасибо


 
wicked ©   (2003-10-25 18:03) [5]

dwCount - размер буффера, в который сохранять данные...
lpRgnData - указатель на буффер...

то есть, можно сделать что то типа:

var bufsize: integer;
data: PRgnData;
begin
bufsize := GetRegionData(HRgn, 0, nil); // !!
GetMem(data, bufsize);
try
Result := GetRegionData(HRgn, bufsize, data);
....
{ здесь сохраняем данные из буффера data }
....
finally
FreeMem(data);
end;
end;

чтоб восстановить регион - ExtCreateRgn...

ЗЫ хотя, если ты используешь функцию, которая гуляет по интернету, то смею заверить, что она достаточно быстра... И поэтому можно хранить битмапку и при нужде делать из неё регион...
если хочешь её еще более ускорить, поубирай из неё GlobalRealloc и всё, что с ним связано...

ЗЗЫ код писал по памяти - уже больше, чем полгода на паскале не писал...


 
ARTEMKA   (2003-10-25 21:11) [6]

Спасибо wicked



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
1-41535
vvvvvvv
2003-10-28 10:42
2003.11.13
Как в StringGrid определить номер первой видимой Col/Row?


7-42189
DarkSan
2003-08-28 15:47
2003.11.13
Баг при установке Delphi 5.0 под Win2K


8-41768
Карелин Артем
2003-07-07 11:16
2003.11.13
Определение геометрических размеров пятна на рисунке.


4-42331
Sesh
2003-08-31 23:20
2003.11.13
Управлени Explorer


3-40983
Vlad
2003-10-16 13:03
2003.11.13
подскажите с UDF




   Наверх