2009-09-22 13 views
43

Jak ustawić ikonę aplikacji dla aplikacji wykonanej przy użyciu Qt? Czy jest jakiś łatwy sposób? Jest to projekt oparty na qmake.Jak ustawić ikonę aplikacji w projekcie opartym na Qt?

+1

na ustawienie ikon na Windows, Linux i macx zobaczyć ten .pro plik https://github.com/zealdocs/zeal/blob/master/src/src.pro#L46 – earthdan

+0

Zależy na którą platformę (których) celujesz: [Zobacz dokumentację Qt] (http://qt-project.org/doc/qt-4.8/appicon.html) – Fred

Odpowiedz

75

Dla Qt 5 proces ten jest zautomatyzowany przez qmake. Wystarczy dodać następujący kod do pliku projektu:

win32:RC_ICONS += your_icon.ico 

Automatyczne generowanie pliku zasobów wykorzystuje również wartości następujących zmiennych qmake: VERSION, QMAKE_TARGET_COMPANY, QMAKE_TARGET_DESCRIPTION, QMAKE_TARGET_COPYRIGHT, QMAKE_TARGET_PRODUCT, RC_LANG, RC_CODEPAGE.

Dla Qt 4, musisz zrobić to ręcznie. W systemie Windows należy utworzyć plik .rc i dodać go do projektu (.pro). Plik RC powinien wyglądać następująco:

IDI_ICON1 ICON DISCARDABLE "path_to_you_icon.ico" 

.pro wpis powinien być również win32 specyficzne, np:

win32:RC_FILE += MyApplication.rc 
+10

Dla bezpieczeństwa powinieneś użyć 'win32: RC_FILE + = MyApplication. rc' – dwj

+1

jak to zrobić w jedności? standardowa dokumentacja jest niewystarczająca i nic nie znaleziono w moim Ubuntu 12.04 jako gnome-config. –

+0

Ustawiając ikonę instalatora (plik '.exe') oraz aplikację komputerową, okno deinstalatora, które prowadzi użytkownika krok po kroku przez użytkownika, pokazuje domyślną ikonę w lewym górnym rogu. Masz pomysł, jak wyświetlić tam również ikonę? Ponadto, w katalogu Uninstall z Panelu sterowania, wszystkie aplikacje pokazują własne ikony, moja aplikacja nadal pokazuje domyślną ikonę exe .. – SexyBeast

0

Teraz Qt został zaktualizowany do 5.0.1, istnieje metoda, aby dodać nowy ikona aplikacji. Po pierwsze, trzeba przygotować plik zasobów, nazwany jako .qrc

1) Bez Qt Designer, zakładam, że istnieje instancja QMainWindow którego nazwa jest MainWin. można użyć:

QIcon icon(":icon/app.icon"); 
MainWin.setWindowIcon(icon); 

2) Z Qt Designer można modyfikować właściwości QMainWindow. Wybierz zasób ikony z .qrc i wstaw go do wiersza windowIcon.

Powyższa metoda może być używana w Qt4.7, Qt4.8.x.

+20

Mylisz się. Twoja metoda służy do ustawiania ikony formularza. Nie ikona aplikacji. – drzymala

+1

To NIE odpowiada na pytanie OP – tarabyte

-2

Kolejny sposób na zrobienie tego. Zweryfikowano w systemie Linux (Qt 4.8.6) i Windows (Qt 5.6):

1) Dodaj plik ikony do folderu projektu;

2) W głównej funkcji wywołaj metodę setWindowIcon(). Na przykład:

QApplication a(argc, argv); 
a.setWindowIcon(QIcon("./images/icon.png")); 
+1

To jest ikona okna, kiedy jest otwarte (ikona na pasku tytułu, na przykład). OP chce, aby ikona wyświetlała się na przykład przy korzystaniu z menedżera plików i kliknięciu myszą w celu otwarcia programu. – Sigur

Powiązane problemy