Leer en inglés

Compartir a través de


Icon.FromHandle(IntPtr) Método

Definición

Crea un Icon de GDI+ desde el identificador de Windows especificado a un icono (HICON).

C#
public static System.Drawing.Icon FromHandle(IntPtr handle);

Parámetros

handle
IntPtr

Identificador de Windows a un icono.

Devoluciones

El Icon crea este método.

Ejemplos

El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:

  • Crea un Bitmap.

  • Dibuja ese objeto en la pantalla.

  • Obtiene un identificador de icono para el Bitmap.

  • Establece el atributo Form.Icon del formulario en un icono creado a partir del identificador.

  • Llama a la función api de Windows DestroyIcon para liberar recursos.

C#

[System.Runtime.InteropServices.DllImport("user32.dll", CharSet = CharSet.Auto)]
extern static bool DestroyIcon(IntPtr handle);

private void GetHicon_Example(PaintEventArgs e)
{

    // Create a Bitmap object from an image file.
    Bitmap myBitmap = new Bitmap(@"c:\FakePhoto.jpg");

    // Draw myBitmap to the screen.
    e.Graphics.DrawImage(myBitmap, 0, 0);

    // Get an Hicon for myBitmap.
    IntPtr Hicon = myBitmap.GetHicon();

    // Create a new icon from the handle. 
    Icon newIcon = Icon.FromHandle(Hicon);

    // Set the form Icon attribute to the new icon.
    this.Icon = newIcon;

    // You can now destroy the icon, since the form creates
    // its own copy of the icon accessible through the Form.Icon property.
    DestroyIcon(newIcon.Handle);
}

Comentarios

Al usar este método, debe eliminar el icono original mediante el método DestroyIcon de la API de Windows para asegurarse de que los recursos se liberan.

Se aplica a

Producto Versiones
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10