예제 #1
0
 /// <summary>
 ///     Create a cursor from the supplied bitmap & hotspot coordinates
 /// </summary>
 /// <param name="bitmap">Bitmap to create an icon from</param>
 /// <param name="hotspotX">Hotspot X coordinate</param>
 /// <param name="hotspotY">Hotspot Y coordinate</param>
 /// <returns>Cursor</returns>
 private static Cursor CreateCursor(Bitmap bitmap, int hotspotX, int hotspotY)
 {
     using (var iconHandle = new SafeIconHandle(bitmap.GetHicon()))
     {
         User32Api.GetIconInfo(iconHandle, out var iconInfo);
         iconInfo.Hotspot = new NativePoint(hotspotX, hotspotY);
         iconInfo.IsIcon  = false;
         var icon = User32Api.CreateIconIndirect(ref iconInfo);
         return(new Cursor(icon));
     }
 }