2012-11-02 48 views
5

我在Fedora 17和Ubuntu 12.04上安裝了Qt 4.8.3和Qt Creator 2.5.2。 當我創建GUI應用程序時,Qt Designer預覽窗口中的可視元素看起來很不錯。但是,當我運行該應用程序時,生成的應用程序具有與OS不一致的舊樣式,並且與Qt Designer中的預覽不匹配。Qt 4.8.3 Linux上的GUI應用程序看起來很老,與設計器預覽版不匹配

在下面的兩張圖中,頂部是來自Qt Designer的預覽,底部是已編譯的應用程序。

  • Qt的被編譯位於http://qt-project.org/downloads
  • 源在安裝過程中,選擇了「開源」版本的的./configure階段安裝。
  • 出現此問題是否應用程序從操作系統上運行,或從IDE

推出有沒有一種方法,使編譯GUI應用程序顯示正常嗎?

的Fedora:

  • 頂半= Qt設計預覽(期望的)
  • 下半部=生成的應用程序

enter image description here

Ubuntu的:

  • 頂半= Qt設計預覽(期望的)
  • 下半部=生成的應用程序

enter image description here

附錄: 這裏是表示4.8.1編譯的應用程序的圖像(如何它應該看起來像) enter image description here

此外,如果我inst所有這些既4.8.1和4.8.3在同一臺計算機上,甚至4.8.1編譯的應用程序將無法正常顯示: enter image description here

+0

有你設置的Qt樣式在你的應用程序中刪除線QMAKE_LFLAGS+=-fuse-ls-gold?或者檢查系統qt風格設置 –

+0

在以前的Qt版本中,如果我希望GUI與本機操作系統的風格相匹配,我就不需要設置樣式。這個版本有這個改變嗎? – Daniel

+0

@DanielK不,它沒有。我發現奇怪的風格問題可能發生,如果'qt設置'應用程序(可能在您的發行版下有不同的名稱,通常有一對圓規作爲徽標)已被混淆。如果我的系統在Gnome下沒有安裝'glabels',我還會發現菜單和文字很奇怪。 – cmannett85

回答

5

問題就解決了。

在安裝Qt源代碼時,說明忘記提到必須在./configure步驟之前安裝開發人員庫列表。這個列表可以在這裏找到:另外http://qt-project.org/wiki/Build_Qt_For_Linux

,我遇到了麻煩編譯,因爲錯誤的QtWebKit的:

g++: error: unrecognized command line option ‘-fuse-ld=gold’

爲了解決這個新問題,以下兩種解決方案之一是可能的:

  • 在配置階段,運行配置與-no-webkit選項:./configure -no-webkit

  • 從文件qt-everywhere.../src/3rdparty/webkit/Source/common.pri
相關問題