2016-01-21 127 views
2

嘗試爲我的QT應用程序設置圖標時遇到了一些問題。如何在Qt中設置應用程序圖標

該圖標被命名爲「room.ico」,並與源文件位於同一目錄中。

下面是代碼:

#include <QApplication> 
#include <QWidget> 

int main(int argc, char *argv[ ]) 
{ 
    QApplication app(argc, argv) ; 
    QWidget fenetre; 
    fenetre.setWindowIcon(QIcon("room.ico")); // Nothing happens 
    fenetre.setWindowTitle("Heloo");  
    fenetre.show(); 
    return app.exec() ; 
} 

我嘗試添加在.pro filewin32:RC_ICONS += room.ico,但沒有奏效。我也試過"./room.ico",但仍然沒有圖標。

我曾嘗試使用此:

QPixmap pixmap = QPixmap ("room.ico"); 
fenetre.setWindowIcon(QIcon(pixmap)); 

你猜怎麼着!它沒有工作......我只是一個新手到QT:對

任何建議將讚賞,感謝

回答

2

QT's documentationQWindow::setWindowIcon應該是你所需要的。

  1. 製作一個圖標文件(你似乎已經這樣做了:room.ico
  2. 添加您的圖標文件到QT資源文件(.qrc.RC),你應該添加到您的項目(documentation討論如何做到這一點
  3. 使用setWindowIcon並通過在QIcon
    1. app.setWindowIcon(QIcon(":/room.ico"));(假設你的文件是在資源文件)

你的問題似乎是,在文件名傳遞給QIcon當你沒有追加:/

+0

確保你在函數參數中提供了正確的字符串。 – AlexanderVX

+0

@AlexanderVX啊,很好看,謝謝。我已經更新了答案。 – Tas

+1

@Tas我按照文檔所做的工作是在RC文件中添加'RC_ICONS = myappico.ico',我必須運行qmake命令才能使圖標出現。現在它正在使用'app.setWindowIcon(QIcon(「room.ico」));'+不需要任何資源文件:) –

相關問題