Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.03 c
14-42008
p0tia
2003-10-16 17:08
2003.11.13
Программное добавление компонентов в uses


3-40898
axx
2003-10-20 12:49
2003.11.13
Как переставить указатель на нужную запить DBGrid a


3-41027
Alina
2003-10-15 14:34
2003.11.13
Ошибка


1-41484
Dark Elf
2003-10-28 18:02
2003.11.13
Подключение dll в проект


14-41913
Омлет
2003-10-19 15:40
2003.11.13
Именинники 19 октября!