Cambiar el icono predeterminado en una aplicación de Windows Forms

91

Necesito cambiar el icono de la aplicación en la que estoy trabajando. Pero simplemente buscando otros íconos desde la pestaña de propiedades del proyecto -> Aplicación -> Ícono , no obtiene los íconos almacenados en el escritorio.

¿Cuál es la forma correcta de hacerlo?

Srivastava
fuente
¿Está cambiando la propiedad del formulario o la aplicación?
Matt Ellen
¿Qué iconos están almacenados en su escritorio? Asegúrate de que esté en formato ico.
Shoban
¿Cómo convertir jpg en formato ico?
Srivastava
Si está buscando íconos que ya están en el formato correcto para usar en su aplicación, vea las respuestas a esta pregunta: stackoverflow.com/questions/4142203/…
Cody Gray

Respuestas:

87

Los iconos que está viendo en el escritorio no son un archivo de iconos. Son archivos ejecutables .exe o accesos directos de cualquier aplicación .lnk . Por lo tanto, solo puede configurar el icono que tiene la extensión .ico .

Vaya al menú Proyecto -> Propiedades de Your_Project_Name -> PESTAÑA Aplicación -> Recursos -> Icono

busque su icono, recuerde que debe tener la extensión .ico

Puedes hacer tu icono en Visual Studio

Vaya al menú Proyecto -> Agregar nuevo elemento -> Archivo de icono

Javed Akram
fuente
22

El icono que se muestra en la barra de tareas y el título de la ventana es el del formulario principal. Al cambiar su icono, también configura el icono que se muestra en la barra de tareas, cuando ya está incluido en su * .resx :

System.ComponentModel.ComponentResourceManager resources = 
    new System.ComponentModel.ComponentResourceManager(typeof(MyForm));
this.Icon = ((System.Drawing.Icon)(resources.GetObject("statusnormal.Icon")));

o, leyendo directamente de sus Recursos:

this.Icon = new Icon("Resources/statusnormal.ico");

Si no puede encontrar inmediatamente el código del Form, busque en todo su proyecto ( CTRL+SHIFT+F) el título de la ventana que se muestra (suponiendo que el texto es estático)

Lorenz Lo Sauer
fuente
10

Puede cambiar el icono de la aplicación en las propiedades del proyecto. Iconos de formularios individuales en las propiedades del formulario.

KristoferA
fuente
9

Agregue su icono como un recurso (Proyecto> Propiedades de su nombre de proyecto> Recursos> Elija "Iconos del menú desplegable> Agregar recurso (o elija Agregar archivo existente del menú desplegable si ya tiene el .ico)

Entonces:

this.Icon = Properties.Resources.youriconname;

Csomotor
fuente
1
Esta es la mejor respuesta entre todas. Esto incluso funciona con un único archivo EXE publicado
Jérôme MEVEL
Perfecto. En VB.Net usé Icon = My.Resources.youriconname
Richard Moore
Esta debería ser la mejor respuesta. El único que mantiene el icono en el archivo exe.
Daniel Möller
5

Una vez que el ícono está en formato .ICO en Visual Studio, uso

//This uses the file u give it to make an icon. 

Icon icon = Icon.ExtractAssociatedIcon(String);//pulls icon from .ico and makes it then icon object.

//Assign icon to the icon property of the form

this.Icon = icon;

así que en resumen

Icon icon = Icon.ExtractAssociatedIcon("FILE/Path");

this.Icon = icon; 

Funciona siempre.

Josh
fuente
1
Works everytime.incorrecto, no funciona si la aplicación se publica como un solo archivo exe
Jérôme MEVEL
3

En el explorador de soluciones, haga clic con el botón derecho en el título del proyecto y seleccione 'Propiedades' en el menú contextual para abrir el formulario 'Propiedad del proyecto'. En la pestaña 'Aplicación', en el cuadro de grupo 'Recursos' hay un campo de entrada donde puede seleccionar el archivo de icono que desea para su aplicación.

LEMUEL ADANE
fuente
Solo para agregar que además de eso, también tendría que cambiar el ícono de sus formularios
KansaiRobot
3

Agregué el archivo .ico a mi proyecto, estableciendo la Acción de compilación en Recurso incrustado . Especifiqué la ruta a ese archivo como el ícono del proyecto en la configuración del proyecto, y luego usé el código a continuación en el constructor del formulario para compartirlo. De esta manera, no necesito mantener un archivo de recursos en ningún lugar con copias del icono. Todo lo que necesito hacer para actualizarlo es reemplazar el archivo.

var exe = System.Reflection.Assembly.GetExecutingAssembly();
var iconStream = exe.GetManifestResourceStream("Namespace.IconName.ico");
if (iconStream != null) Icon = new Icon(iconStream);
Dov
fuente
1

Descubrí que la forma más fácil es:

  1. Agregue un archivo de icono en su proyecto de WinForms.
  2. Cambie la acción de compilación de los archivos de icono a Recurso integrado
  3. En la función Carga de formulario principal:

    Icon = LoadIcon ("<el nombre de archivo de ese archivo de icono>");

sk
fuente
0

La solución más simple está aquí: si está utilizando Visual Studio, Solution Explorerhaga clic con el botón derecho en el archivo de su proyecto. Elige Properties. Seleccione Icon and manifestluego Examinar su .icoarchivo.

Comunidad Ans
fuente
0

Seleccione las propiedades de su proyecto en la pestaña Proyecto, luego Aplicación-> Recurso-> Icono y manifiesto-> cambie el icono predeterminado

Esto funciona en Visual Studio 2019 finamente Nota: Solo los archivos con formato .ico se pueden agregar como ícono

Chandhu Kuttan
fuente
0

seleccione Formulario principal -> propiedades -> estilo de Windows -> icono -> explore su ico

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

srinivasan
fuente