Qt小技巧7.Qt4集成fusion風格


1 Qt4和Qt5支持的風格

由於公司有些老項目使用的是Qt4進行開發的,所以有些Qt5的特性是不具備的,例如fusion風格,分別打印下Qt4和Qt5支持的風格:

qDebug() << QStyleFactory::keys();

qt4:
("Windows", "WindowsXP", "WindowsVista", "Motif", "CDE", "Plastique", "Cleanlooks")
qt5:
("Windows", "WindowsXP", "WindowsVista", "Fusion")
由截圖可以看出fusion風格更加簡潔優美,Qt4如果想用的話需要手動編譯插件。

2 插件編譯

首先下載源碼:fusion-qt4
直接編譯是不行的,會報鏈接錯誤,我這裏的環境是Qt4.8.6+vs2010,對fusion.pro文件進行如下增改:

修改:QTSRC = d:/Qt/4.8.6/src(這裏根據自己的路徑修改)
增加:CONFIG += build_all(同時編譯debug和release版本)                  
修改:win32: LIBS += -lgdi32 -luser32(引入庫)

編譯完成後自動生成dll插件,如下圖:

到此,集成就搞定了,可以使用了,再打印下支持的風格:
("fusion", "Windows", "WindowsXP", "WindowsVista", "Motif", "CDE", "Plastique", "Cleanlooks")
可見,Qt4現在能夠使用fusion風格了。

3 程序打包

打包的時候不要忘了將D:\Qt\4.8.6\plugins\styles目錄複製到可執行文件同級目錄下:

這樣fusion風格才能生效,如果是release發佈版,styles目錄只保留fusion.dll即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章