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

Вниз

ANI-курсоры   Найти похожие ветки 

 
Митяй2 ©   (2002-11-07 09:48) [0]

Можно ли в ресурс помещать анимированные курсоры?

Например для обычных курсоров работает следующее:

//----------- В программе -----------------------

Screen.Cursors[1]:=LoadCursor(hinstance,"normal");
Screen.Cursors[2]:=LoadCursor(hinstance,"precision");

//----------------------------------------------------


//---------- Содержимое файла .rc --------------------

normal CURSOR normal.cur
precision CURSOR pre.cur


Можно ли аналогично использовать *.ani-файла.

P.S. Как загружать из файла - знаю (это не подходит).
С уважением, СТОРОННИК Delphi.


 
Митяй2 ©   (2002-11-09 08:39) [1]

Неужто из мастеров никто этого не знает?


 
Ketmar ©   (2002-11-09 12:30) [2]

а взять и попробовать - мама не позволяет?

Satanas Nobiscum! 09-Nov-XXXVII A.S.


 
Митяй2 ©   (2002-11-10 14:36) [3]

Еслиб не пробовал, то и не просил помочь!

Пробовал - не проканывает.

Под словом "аналогично" подразумевается не просто заменить
cur на ani, а еще какие-то изменения. Какие не знаю!

Поэтому и вопрос-то родился.


 
Андрей Прокофьев ©   (2002-11-10 14:47) [4]

В RC-файле

ANICLOCKS RT_ANICURSOR "CLOCKS.ANI"

А вот функция для чтения этого курсора (через файл)

function LoadAniCursor(Instance: THandle; ResID: PChar): HCursor;
{ Unfortunately I don"t know how we can load animated cursor from
executable resource directly. So I write this routine using temporary
file and LoadCursorFromFile function. }
var
S: TFileStream;
Path, FileName: array[0..MAX_PATH] of Char;
Rsrc: HRSRC;
Res: THandle;
Data: Pointer;
begin
Result := 0;
Rsrc := FindResource(Instance, ResID, "RT_ANICURSOR");
if Rsrc <> 0 then begin
Win32Check(GetTempPath(MAX_PATH, Path) <> 0);
Win32Check(GetTempFileName(Path, "ANI", 0, FileName) <> 0);
try
Res := LoadResource(Instance, Rsrc);
try
Data := LockResource(Res);
if Data <> nil then
try
S := TFileStream.Create(StrPas(FileName), fmCreate);
try
S.WriteBuffer(Data^, SizeOfResource(Instance, Rsrc));
finally
S.Free;
end;
Result := LoadCursorFromFile(FileName);
finally
UnlockResource(Res);
end;
finally
FreeResource(Res);
end;
finally
Windows.DeleteFile(FileName);
end;
end;
end;


 
Митяй2 ©   (2002-11-10 19:43) [5]

Спасибо, попробую, правдо
корява-то для нормального программирования!


 
МитяЙ2 ©   (2002-11-13 16:52) [6]

Может ещё кто-нибудь сообщить?

Заранее БЛАГОДАРЕН!


 
Митяй2 ©   (2002-11-25 14:46) [7]

Вопрос остается открытым.




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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
3-16874
SKing
2003-02-18 10:33
2003.03.06
Подключение к MS Access?


9-16839
greenrul
2002-09-29 20:26
2003.03.06
Полоска здоровья: DelphiX


14-17262
happyboy
2003-02-18 16:23
2003.03.06
DrawItem


9-16844
greenrul
2002-10-09 13:49
2003.03.06
Динамическая загрузка wav в WaveList:


14-17355
Artem Gazizov
2003-02-15 23:01
2003.03.06
страны мира