Muestra
como utilizar un BITMAP (en este caso extraído de un TImage) para
modificar el cursor activo. Modificando un poco el Tip/Truco es fácil
obtener
la imagen de disco o desde un recurso.
Se utiliza la API
CreateIconIndirect
para generar el cursor que posteriormente se activará.
Se puede usar un color de fondo como transparente
para obtener un cursos "opaco" o un segundo BITMAP para combinarlo con
el primero y así obtener también efectos de transparencia en el cursor
generado.
// Crear los bitmaps
BitmapMask := TBitmap.Create;
Bitmap := TBitmap.Create;
// proteccion
try
// Cargar las imágenes
BitmapMask.Assign(Image2.Picture.Bitmap);
Bitmap.Assign(Image1.Picture.Bitmap);
// Crear el icono del cursor
with iconInfo do begin
fIcon := false;
xHotspot := (Bitmap.Width div 4);
yHotspot := (Bitmap.Height div 3);
hbmMask := BitmapMask.Handle;
hbmColor := Bitmap.Handle;
end;
// Asignar el icono
Screen.Cursors[1] := CreateIconIndirect(iconInfo);
Self.Cursor := 1;
finally
// Liberar
BitmapMask.Free;
Bitmap.Free;
end;
Es ejemplo completo se puede descargar
AQUÍ
.
Indice