Utilizar un BMP para cambiar el cursor

  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