Вниз
Скачать: 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.025 c
4-42225
JS
2003-09-02 16:45
2003.11.13
Global memory


3-41066
ФРИМЕН
2003-10-23 20:57
2003.11.13
Помогите разобраться с БД


14-41956
mrcat
2003-10-20 10:29
2003.11.13
Implib.exe


11-41129
SGh
2003-02-17 21:24
2003.11.13
Так все же где Hint?


1-41714
Duran
2003-11-03 18:00
2003.11.13
Колесо прокрутки




   Наверх