Aber warum erlauben die RessourcenCompiler vom Delphi nicht das Einbinden dieser Cursor?
Also ich hatte sowas auch mal gemacht und das funktionierte. Mit XE3.
Bei mir sah das dann so aus in der
Res RC-Datei:
Code:
#define ANICURSOR 21
DROPBELOWCUR CURSOR "DropBelow.cur"
DROPABOVEANI ANICURSOR "DropAbove.ani"
Die Datei lässt sich dann auch problemlos kompilieren und in das Projekt einbinden.
Geladen habe ich die Datei dann mit folgenden Code. Keine Ahnung ob das der beste Weg ist, aber es funktioniert problemlos.
Delphi-Quellcode:
procedure LoadAnimatedCursor(ResourceName: string; ResourceType: PWideChar; CursorIdx: Integer);
var
ResStream: TResourceStream;
ResFileName: PWideChar;
begin
ResStream := TResourceStream.Create(HInstance, ResourceName, ResourceType);
try
ResFileName := PWideChar(IncludeTrailingPathDelimiter(ExtractFilePath(aktuellerpfadUserIni)) + 'CursorRes');
ResStream.Position := 0;
ResStream.SaveToFile(ResFileName);
Screen.Cursors[CursorIdx] := LoadImage(HInstance, ResFileName, IMAGE_CURSOR, 0, 0,
LR_DEFAULTSIZE or LR_LOADFROMFILE);
DeleteFile(ResFileName);
finally
ResStream.Free;
end;
end;