2011-06-02 49 views
1

嗨 我在Windows機器上開發的多個應用程序中遇到問題。當我在Ubuntu上構建相同的應用程序並運行它們時,單獨的文件菜單欄中不會顯示任何圖標。 在windows中完美工作。任何建議QIcon未在Ubuntu上顯示,在Windows上工作

LoadAction = new QAction(tr("&Open file"), this); 
LoadAction->setIcon(QIcon(Dir +"/images/Load.png")); 
LoadAction->setShortcut(QKeySequence::Open); 

我翻了一番檢查路徑,一切都很好...

+0

Qt是否給你提供任何警告,你是否也可以發佈真正的路徑和'ls -la images/Load.png'的輸出?也許您已將工具欄配置爲僅顯示文本? – 2011-06-02 07:56:15

+0

您確定您使用的視覺樣式是否支持菜單圖標? – 2011-06-02 09:00:39

+0

您正在使用哪個桌面管理器? – 2013-02-05 14:24:53

回答

0

拆分第二線,首先創建QIcon,然後用 布爾QIcon :: ISNULL()const的 - 方法來檢查如果圖標是loadede 並最終設置圖標。 如果不能從該文件加載,然後嘗試創建路徑優先

QString path=Dir+"/images/Load.png"; 

,並檢查這條道路是正確的

還記得一些圖像格式,你需要的插件(但PNG將工作如果沒有這些,只是如果你使用其他格式,如JPG,SVG)

0

Linux計算機上的路徑是大小寫敏感的。你確定你沒有大寫文件擴展名嗎?

Windows會更寬容。

之後的步驟將輸出到調試窗口的路徑,並對其執行QFile :: exists測試。

相關問題