天天看點

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

2016年10月27日

Windows系統安裝

1、Pyqt4下載下傳安裝

pycharm就自己百度安裝吧。

PyQt4安裝包下載下傳位址:

https://riverbankcomputing.com/software/pyqt/download

我的python用的是2.7的版本,這裡選的pyqt4是PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32

這個位數也是很關鍵的,我開始選的是64位的,在把.ui變為.py檔案的時候就報錯,

報錯資訊如下

導入子產品時報 python ImportError: DLL load failed: %1 不是有效的 Win32 應用程式

解決方法:選擇32位的安裝包,把64位的解除安裝了就好了。

下載下傳後直接點選安裝,下一步就好

2、pycharm中配置pyQt4

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案
pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

C:\Python27\Lib\site-packages\PyQt4\designer.exe

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

qi

C:\Python27\Lib\site-packages\PyQt4\uic\pyuic.py $FileName$ -o $FileNameWithoutExtension$.py

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

完成後的結果 

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

pycharm中可看到pyqt4

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

3、使用pyqt設計

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

把.ui文成.py方法

方法1、建立一個bat檔案,内容如下

@echo off 

@cd /d "%~dp0" 

pyuic4 %1 > %~n1.py

方法二:windows的cmd視窗

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

完成後的結果

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案
pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

修改幾個地方 

增加 import sys 

将 Ui_MainWidonw(object)中的object修改成修改成QtGui.QMainWindow 

在Class類下添加一個 init方法:

def __init__(self): super(Ui_MainWindow,self).__init__() 

self.setupUi(self) 

self.retranslateUi(self) 

在代碼的末尾加上如下代碼

app = QtGui.QApplication(sys.argv) 

win = Ui_MainWindow() 

win.show() 

app.exec_() 

執行,成功出現界面

我這裡加的是如下代碼,我使用上面的不行。

__name__ == :
    app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())      
pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

雖然醜,但是成功了就行啦。嘿嘿。隻是環境搭建而已。

為了進行下面的學習,後面介紹mac版的的安裝。按時還沒

2016年11月2日 Mac系統安裝

1、我的系統自帶了編譯的軟體,就沒有安裝Xcode

2、brew安裝

下載下傳位址

https://github.com/mxcl/homebrew/tarball/master

解壓:tar -xvf Homebrew-legacy-homebrew-5a9e19f.tar

cd Homebrew-legacy-homebrew-5a9e19f

我們使用的指令都是在

/usr/local/bin 中,是以需要做如下操作

wulilideMacBook-Pro:Homebrew-legacy-homebrew-5a9e19f root# ls -l

total 32

[email protected] 5 root  wheel   170 Oct 10 02:59 .github

[email protected] 1 root  wheel   823 Oct 10 02:59 .gitignore

[email protected] 1 root  wheel    72 Oct 10 02:59 CODEOFCONDUCT.md

[email protected] 1 root  wheel  1241 Oct 10 02:59 LICENSE.txt

[email protected] 5 root  wheel   170 Oct 10 02:59 Library

[email protected] 1 root  wheel   412 Oct 10 02:59 README.md

[email protected] 3 root  wheel   102 Oct 10 02:59 bin

[email protected] 3 root  wheel   102 Oct 10 02:59 share

wulilideMacBook-Pro:Homebrew-legacy-homebrew-5a9e19f root# pwd

/Users/wulili/Downloads/Homebrew-legacy-homebrew-5a9e19f

移動brew

 mv bin/brew /usr/local/bin  

移動Library

mv Library /usr/local

移動share

mv share /usr/local  

執行brew會提示讓直行brew update

下面按照提示進行操作

brew update

執行之後,brew就安裝好了

3、安裝qt

brew install qt

安裝内容會提示,讓直行brew link qt

接下來按照提示操作,執行

brew link qt

檢視安裝路徑

wulilideMacBook-Pro:bin root# which qmake                               

/usr/local/bin/qmake

下面會用到

4、安裝sip

安裝包路徑

https://riverbankcomputing.com/software/sip/download

解壓下載下傳的壓縮包

進到解壓後的目錄中

wulilideMacBook-Pro:bin root# cd /Users/wulili/Downloads/sip-4.18.1

wulilideMacBook-Pro:sip-4.18.1 root# ls -l

total 1504

[email protected]  1 wulili  staff  286095 Jul 25 21:35 ChangeLog

[email protected]  1 wulili  staff    2653 Mar 25  2015 LICENSE

[email protected]  1 wulili  staff   18161 Mar 25  2015 LICENSE-GPL2

[email protected]  1 wulili  staff   35297 Mar 25  2015 LICENSE-GPL3

-rw-r--r--   1 root    staff     495 Nov  2 19:23 Makefile

[email protected]  1 wulili  staff   27713 Jul 25 21:24 NEWS

[email protected]  1 wulili  staff    1179 Mar 25  2015 README

[email protected]  1 wulili  staff   31499 Jul 25 21:35 configure.py

[email protected]  3 wulili  staff     102 Jul 25 21:35 doc

[email protected]  1 wulili  staff    2801 May  7 17:21 sip.pyi

-rw-r--r--   1 root    staff   96679 Nov  2 19:23 sipconfig.py

-rw-r--r--   1 root    staff   70601 Nov  2 19:23 sipconfig.pyc

[email protected]  1 wulili  staff    6041 Mar 25  2015 sipdistutils.py

[email protected] 26 wulili  staff     884 Nov  2 19:23 sipgen

[email protected] 29 wulili  staff     986 Nov  2 19:23 siplib

[email protected]  1 wulili  staff   91800 Mar 25  2015 siputils.py

-rw-r--r--   1 root    staff   70503 Nov  2 19:23 siputils.pyc

[email protected] 71 wulili  staff    2414 Sep 18  2015 specs

[email protected] 18 wulili  staff     612 Jul 25 21:35 sphinx

wulilideMacBook-Pro:sip-4.18.1 root# 

python configure.py -d /Library/Python/2.7/site-packages --arch x86_64

wulilideMacBook-Pro:sip-4.18.1 root#make

報錯資訊

cp -f sip /System/Library/Frameworks/Python.framework/Versions/2.7/bin/sip

cp: /System/Library/Frameworks/Python.framework/Versions/2.7/bin/sip: Operation not permitted

make[1]: *** [install] Error 1

make: *** [install] Error 2

下面資訊采納自http://www.2cto.com/kf/201604/498456.html

原因

經曆了XCode編譯器代碼被注入的事件後,這次 Mac OS X El Capitan系統的更新,啟用了更高的安全性保護機制:系統完整性保護System Integrity Protection (SIP)。簡單來講就是更加強制性的保護系統相關的檔案夾。開發者不能直接操作相關的檔案内容。

解決方案

其實解決方案就已經很簡單了,既然是系統中有 SIP 的問題,那麼我們把它關閉就好了:

  1. 重新開機系統
  2. 按住 

    Command + R

     進入 Recoverary 模式----這裡可能有的人不知道怎麼弄,要這樣,選擇重新開機,再重新開機的過程中按住Command + R,就會到達Recoverary 模式,不是重新開機好之後按下這兩個按鍵。
  3. 點選 實用工具 > 終端
  4. 輸入 

    csrutil disable

  5. 重新開機系統

這時我們再重新編譯安裝 sip 就沒有任何問題了。

處理好之後,繼續

make

make install

就安裝完成了

5、安裝PyQt4

軟體包下載下傳位址

https://riverbankcomputing.com/software/pyqt/download

下載下傳安裝包,解壓,然後進入解壓目錄中

wulilideMacBook-Pro:PyQt-mac-gpl-4.11.4 root# pwd

/Users/wulili/Downloads/PyQt-mac-gpl-4.11.4

wulilideMacBook-Pro:PyQt-mac-gpl-4.11.4 root# 

python configure.py  -q /usr/local/bin/qmake -d /Library/python/2.7/site-packages --use-arch x86_64

make

make install

就安裝完成了

wulilideMacBook-Pro:PyQt-mac-gpl-4.11.4 root# python

Python 2.7.10 (default, Oct 23 2015, 19:19:21) 

[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> import PyQt4

>>> 

驗證完成,說明安裝成功

11月3日繼續

對未知的探索總是艱難的過程,各種報錯,各種異常,各種百度,各種嘗試,最終才能夠得到結果

1、pycharm中配置qt designer

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案
pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

這裡我隻能保證這個配置是對的,就分享這個吧

/usr/local/Cellar/qt/4.8.7_2/Designer.app這是一個目錄,可謂找了好久才找到他

wulilideMacBook-Pro:untitled2 root# cd /usr/local/Cellar/qt/4.8.7_2/Designer.app

wulilideMacBook-Pro:Designer.app root# ls -l

total 0

drwxr-xr-x  6 502  wheel  204 Nov  2 16:04 Contents

wulilideMacBook-Pro:Designer.app root# cd Contents/

wulilideMacBook-Pro:Contents root# ls -l

total 16

-rw-r--r--  1 root  staff  1075 Nov  2 16:04 Info.plist

drwxr-xr-x  3 502   wheel   102 May  7  2015 MacOS

-rw-r--r--  1 502   wheel     9 May  7  2015 PkgInfo

drwxr-xr-x  5 502   wheel   170 May  7  2015 Resources

wulilideMacBook-Pro:Contents root# cd MacOS/

wulilideMacBook-Pro:MacOS root# ls -l

total 1208

-rwxr-xr-x  1 502  wheel  617112 Nov  2 16:04 Designer

wulilideMacBook-Pro:MacOS root# 

列出來,友善搭建在自己的Mac上查找

2、

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

儲存為UI檔案

pycharm + pyqt4編寫圖形使用者界面環境搭建原因解決方案

3、把UI檔案轉換為py檔案(可謂艱難,各種報錯)

pyuic4 

wulilideMacBook-Pro:uic root# pyuic4

-sh: pyuic4: command not found

wulilideMacBook-Pro:Desktop root# find / -name pyuic4

find: /dev/fd/3: Not a directory

find: /dev/fd/4: Not a directory 

/System/Library/Frameworks/Python.framework/Versions/2.7/bin/pyuic4   bin下的才是可執行檔案

/Users/wulili/Downloads/PyQt-mac-gpl-4.11.4/pyuic/pyuic4

wulilideMacBook-Pro:/ root# cd       

wulilideMacBook-Pro:~ root# export $PATH     

-sh: export: `/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin': not a valid identifier

wulilideMacBook-Pro:~ root# cp /System/Library/Frameworks/Python.framework/Versions/2.7/bin/pyuic4 /usr/bin/

wulilideMacBook-Pro:~ root# pyuic4

Error: one input ui-file must be specified

wulilideMacBook-Pro:untitled2 root# pyuic4 -w ooo.ui > ooo.py 指令要這樣使用

wulilideMacBook-Pro:untitled2 root# ls -l

total 40

drwxrwxrwx  6 wulili  staff   204 Nov  3 10:27 .idea

-rw-r--r--  1 wulili  staff  1525 Nov  3 10:08 aaa.ui

-rwxr-xr-x  1 wulili  staff   862 Oct 31 15:26 client.py

-rw-r--r--  1 root    staff  2400 Nov  3 10:30 ooo.py

-rw-r--r--  1 wulili  staff  1272 Nov  3 10:26 ooo.ui

-rwxrwxrwx  1 wulili  staff  2111 Oct 31 16:23 server.py

-rw-r--r--  1 wulili  staff     0 Nov  2 20:36 test.py

到此就完成了,終于環境搭建在windows和Mac上都成功了。。耗費了好多時間,不過也學到了很多,學會了該用怎樣的邏輯思維去處理問題

這些内容都是心學習的内容,所有的都是未知的,都是百度了很多,了解了很多才弄成功,把詳細的内容分享給大家

轉載于:https://blog.51cto.com/10983441/1866270