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?
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?
Odpowiedzi:
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
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)
Możesz zmienić ikonę aplikacji we właściwościach projektu. Poszczególne ikony formularzy pod właściwościami formularza.
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;
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.
Works everytime.
źle, nie działa, jeśli aplikacja jest opublikowana jako pojedynczy plik exe
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.
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);
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 manifest
a następnie Przeglądaj .ico
plik.
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
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")));