最近用Pyqt作了軟件界面,始終以爲windows風格不太好看,雖然數字公司的行爲有爭議,可是也不影響我欣賞360衛士的界面風格。html
首先聲明,此項工做並不是原創,而是基於這位zhuyeqing_432兄臺的工做:windows
博客地址:http://blog.csdn.net/zhuyeqing_432優化
未修改代碼下載:http://download.csdn.net/detail/zhuyeqing_432/6045601.net
而後拿到原始代碼後,總體界面是基本成型,完成度是至關高的:1個主界面和4個窗口(skin_widget.py換膚,setting_dialog.py設置,character_widget.py宣傳頁,about_us.py關於,具體入口見上圖箭頭)orm
不知道是不是由於Pyqt版本的緣由,代碼自己發現了不少問題:htm
1 最大化和還原blog
2 退出時會提示異常ip
3 界面沒法拖動get
4 有多處stylesheet沒法parse,而且按鈕樣式和tab樣式仍是未如意博客
1 最大化和還原,原來使用self.setGeometry(QApplication.desktop().availableGeometry()來設置最大化,改成showMaximized/showNormal來切換
2 反正解決了
3 界面拖動見這篇博文http://www.cnblogs.com/anic/p/3542822.html,其中main_widget.py和about_us.py優化爲虛框拖動,其餘界面如skin_widget.py仍然用move方式移動,以便進行效果對比
4 stylesheet沒法parse的緣由因爲Stylesheet的寫法有誤,沒有增長分號
修改前:
self.power_button.setStyleSheet("QPushButton{border-radius:5px background:rgb(110, 190, 10);color:white}"
"QPushButton:hover{background:rgb(140, 220, 35)}")
修改後:
self.power_button.setStyleSheet("QPushButton{border-radius:5px;background:rgb(110, 190, 10);color:white}"
"QPushButton:hover{background:rgb(140, 220, 35)}")
修改後的效果,其中虛框表示移動中的窗口