還在繼續寫Python小工具,想起之前用Tkinter被坑得半死,決定換個框架寫UI,又想順便了解一下qt,就學習一下pyqt4
搭建環境
win:現在安裝包 http://www.riverbankcomputing.co.uk/software/pyqt/download ,測試環境是win8 64位、Python2.7, 所以下載了 PyQt4-4.11.3-gpl-Py2.7-Qt4.8.6-x64.exe ,一路next就行了,很簡單,需要注意的是,安裝包會自動搜索Python的安裝位置,然后安裝到Python27\Lib\site-packages\PyQt4 目錄下。 參考: http://www.2cto.com/kf/201111/111625.html
mac:需要下載Qt、Sip、pyqt4,本地環境是 OS 10.9.2 64位, qt 5.3, qt自行下載自行安裝即可
sip 下載地址:http://www.riverbankcomputing.co.uk/software/sip/download 我下載的是 Source Packages 里的 sip-4.16.6.tar.gz,安裝:
1 cd sip-4.16.6 2 3 python configure.py -d /Library/Python/2.7/site-packages --arch=x86_64 4 5 make 6 7 sudo make install
pyqt下載地址:http://www.riverbankcomputing.com/software/pyqt/download 我下載的是 Development Snapshots 下的 PyQt-mac-gpl-4.11.4-snapshot-8313084030e1.tar.gz。 安裝如下(pyqt的目錄和qt的安裝目錄要改成你具體的目錄):
1 cd PyQt-mac-gpl-4.11.4-snapshot-8313084030e1 2 3 python configure-ng.py -q /Users/watsy/Qt5.3/5.3/clang_64/bin/qmake -d /Library/Python/2.7/site-packages/ --sip /System/Library/Frameworks/Python.framework/Versions/2.7/bin/sip 4 5 make 6 7 sudo make install
mac環境搭建參考: http://blog.csdn.net/watsy/article/details/8857252
Python使用Qt的UI文件
搭建好環境后,就可以用 designer設計器 來便捷地創建UI界面了,windows下在 Python27\Lib\site-packages\PyQt4 目錄下,mac下在qt的安裝目錄 Qt5.3.0/5.3/clang_64/bin 下
designer生成的UI文件的的后綴是 .ui ,命令: pyuic4 -x aaaaaaa.ui -o bbbbbb.py 即可把.ui文件轉成py文件了。(可以先cd到.ui文件所在的目錄,也可以直接輸入.ui 文件的絕對路徑)
注意: windows下可以打開 cmd.exe 直接輸入pyuic4命令,mac下要設置一下pyuic4環境變量,否則就只能帶上路徑了,如:
/Volumes/mac_data/soft/PyQt-mac-gpl-4.11.4-snapshot-83d48b092f7c/pyuic4 -x aaaaaaa.ui -o bbbbbb.py
Python pyqt connection 自定義參數
在響應一些控件的信號時,如果想傳一些自定義參數進去,需要對信號進行封裝,如:
1 self.callback1 = partial(self.on_click, u"走364351asdf") 2 #self.connect(ui.pushButton, SIGNAL("clicked()"), self.callback1) 3 ui.pushButton.clicked.connect(self.callback1) 4 5 6 def on_click_common1(self, str1): 7 print(str1)
詳細可以參考:http://askandstudy.blog.163.com/blog/static/1997520582012013195282/
