Форум: "Media";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "Media";
Текущий архив: 2003.03.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.009 c