环境如下:
Mac OS 10.13.6 版本
Pycharm 10.13.6 社区版
python 3.6.6 版本
PyQt5 5.13.0版
- 进入虚拟环境并激活(不需要在虚拟环境的跳过第一步)
$ cd /Users/***/PycharmProjects/pyqt/env
$ source bin/activate
- 进入Pycharm搜索安装SIP、PyQt5或者命令行输入
pip3 install SIP
接着输入pip3 install PyQt5
- 安装Qt
brew install qt
- 在Pycharm配置QtDesigner,可以可视化操作的工具。
Program:找到自己电脑里的Designer.app对应的路径
打开终端输入:
find ~ -iname "Designer.app"
查看Designer.app的显示简介并复制路径
eg: /usr/local/Cellar/qt/5.13.0/libexec/Designer.app
Working directory:点击insert Macro…添加$FileDir$
- 添加pyUIC能把UI文件转成py文件
Program:找到自己工程使用的python对应的路径
eg: /Users/***/PycharmProjects/pyqt/env/bin/python
Paramters里面的内容:(一样)
-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working directory:添加$FileDir$
点击Ok,apply
打开QtDesigner。
pyUIC这个命令行工具会把UI文件转成py文件
如果上面觉得麻烦的话
可以保存下面这个脚本,也能将.ui文件转换为.py文件,同一个文件夹下的所有.ui文件一次转换成.py文件
import os
import os.path
dir = './'
def listUiFile():
list = []
files = os.listdir(dir)
for filename in files:
# print( dir + os.sep + f )
# print(filename)
if os.path.splitext(filename)[1] == '.ui':
list.append(filename)
return list
def transPyFile(filename):
return os.path.splitext(filename)[0] + '.py'
def runMain():
list = listUiFile()
for uifile in list:
pyfile = transPyFile(uifile)
cmd = 'pyuic5 -o {pyfile} {uifile}'.format(pyfile=pyfile, uifile