Zmiana domyślnej ikony w aplikacji Windows Forms

91

Muszę zmienić ikonę w aplikacji, nad którą pracuję. Ale po prostu przeglądając inne ikony na karcie właściwości projektu -> Aplikacja -> Ikona , nie uzyskuje się ikon przechowywanych na pulpicie.

Jak to zrobić we właściwy sposób?

Srivastava
źródło
Zmieniasz właściwość formularza lub aplikacji?
Matt Ellen
Jakie ikony są przechowywane na pulpicie? Upewnij się, że jest w formacie ico.
Shoban
jak przekonwertować jpg do formatu ico?
Srivastava
Jeśli szukasz ikon, które są już w odpowiednim formacie do użycia w Twojej aplikacji, zobacz odpowiedzi na to pytanie: stackoverflow.com/questions/4142203/ ...
Cody Gray

Odpowiedzi:

87

Ikony, które widzisz na pulpicie, nie są plikami ikon. Są to pliki wykonywalne .exe lub skróty dowolnej aplikacji .lnk . Więc można ustawić tylko ikonę, która ma rozszerzenie .ico .

Przejdź do menu Projekt -> Właściwości Nazwa_Twojego_projektu -> Karta aplikacji -> Zasoby -> Ikona

przeglądaj swoją ikonę, pamiętaj, że musi mieć rozszerzenie .ico

Możesz utworzyć swoją ikonę w programie Visual Studio

Przejdź do menu projektu -> Dodaj nowy element -> Plik ikony

Javed Akram
źródło
22

Ikona wyświetlana na pasku zadań i w tytule okna to ikona głównego formularza. Zmieniając jej ikonę, ustawiasz również ikonę wyświetlaną na pasku zadań, jeśli jest już zawarta w * .resx :

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

lub czytając bezpośrednio ze swoich zasobów:

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

Jeśli nie możesz od razu znaleźć kodu Form, wyszukaj w całym projekcie ( CTRL+SHIFT+F) pokazany tytuł okna (zakładając, że tekst jest statyczny)

Lorenz Lo Sauer
źródło
10

Możesz zmienić ikonę aplikacji we właściwościach projektu. Poszczególne ikony formularzy pod właściwościami formularza.

KristoferA
źródło
9

Dodaj swoją ikonę jako zasób (Projekt> nazwa twojego projektu Właściwości> Zasoby> Wybierz „Ikony z listy rozwijanej> Dodaj zasób” lub wybierz Dodaj istniejący plik z listy rozwijanej, jeśli masz już plik .ico)

Następnie:

this.Icon = Properties.Resources.youriconname;

Csomotor
źródło
1
To najlepsza odpowiedź spośród wszystkich. Działa to nawet z opublikowanym pojedynczym plikiem EXE
Jérôme MEVEL
Idealny. W VB.Net użyłem Icon = My.Resources.youriconname
Richard Moore
To powinna być najlepsza odpowiedź. Jedyny, który zachowuje ikonę w pliku exe.
Daniel Möller
5

Gdy ikona jest w formacie .ICO w Visual Studio, którego używam

//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;

tak w skrócie

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

this.Icon = icon; 

Działa za każdym razem.

Josh
źródło
1
Works everytime.źle, nie działa, jeśli aplikacja jest opublikowana jako pojedynczy plik exe
Jérôme MEVEL
3

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy tytuł projektu i wybierz „Właściwości” z menu kontekstowego, aby otworzyć formularz „Właściwości projektu”. W zakładce „Aplikacja”, w polu grupy „Zasoby” znajduje się pole wejściowe, w którym można wybrać plik ikony, który ma być używany w aplikacji.

LEMUEL ADANE
źródło
Dodam, że oprócz tego musiałby zmienić także ikonę swoich formularzy
KansaiRobot
3

Dodałem plik .ico do mojego projektu, ustawiając akcję kompilacji na zasób osadzony . Podałem ścieżkę do tego pliku jako ikonę projektu w ustawieniach projektu, a następnie użyłem poniższego kodu w konstruktorze formularza, aby go udostępnić. W ten sposób nie muszę nigdzie utrzymywać pliku zasobów z kopiami ikony. Wszystko, co muszę zrobić, aby go zaktualizować, to zastąpić plik.

var exe = System.Reflection.Assembly.GetExecutingAssembly();
var iconStream = exe.GetManifestResourceStream("Namespace.IconName.ico");
if (iconStream != null) Icon = new Icon(iconStream);
Dov
źródło
1

Odkryłem, że najłatwiej jest:

  1. Dodaj plik Icon do projektu WinForms.
  2. Zmień akcję kompilacji plików ikon na zasób osadzony
  3. W funkcji Main Form Load:

    Icon = LoadIcon ("<nazwa pliku tego pliku ikony>");

sk
źródło
0

Najprostszym rozwiązaniem jest tutaj: Jeśli używasz Visual Studio, z Solution Explorer, kliknij prawym przyciskiem na pliku projektu. Wybierz Properties. Wybierz, Icon and manifesta następnie Przeglądaj .icoplik.

Społeczność Ans
źródło
0

Wybierz właściwości projektu z zakładki Projekt, a następnie Aplikacja-> Zasób-> Ikona i manifest-> zmień domyślną ikonę

Działa to doskonale w programie Visual Studio 2019 Uwaga: jako ikony można dodawać tylko pliki w formacie .ico

Chandhu Kuttan
źródło
0

wybierz Formularz główny -> właściwości -> Styl systemu Windows -> ikona -> przeglądaj swoje ico

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

srinivasan
źródło