python GUI框架

python开发GUI程序,了解一个框架需要了解:

(1)运行效果
(2)能够运行在哪些平台
(3)学习成本,因为每一个GUI框架都有自己的特点
(4)开发效率的比较,python的运行效率比c c++低,但是开发效率是比较快的

python GUI框架:

(1)Tkinter: python内置的GUI框架,使用TCL实现,python中内嵌了TCL解释器,使用它的时候不用安装额外的扩展包,直接import,跨平台。不足之处在于UI布局全靠代码实现,只有15种常用部件,显示效果简陋。
(2)Wxpython:用得比较广泛,跨平台,C++编写,需要安装扩展模块;文档少,遇到问题不好解决,代码布局控件,不直观。
(3)Pygtk: python对GTK+GUI库的封装,在linux平台上运行的比较好,需要安装扩展模块,在windows下的兼容性有一些问题。
(4)pyqt:QT原本是诺基亚的产品,源码用C++写的,python对QT的包装,跨平台,本地显示效果,根据系统决定,在win7下就是win7的显示效果;pyqt与qt的函数接口一致,qt开发问的那个丰富,所以pyqt开发文档也比较丰富;控件丰富,函数/方法多,拖曳布局;方便打包成二进制文件;GPL协议,商业程序需要购买商业版授权
(5)pyside:诺基亚的亲儿子,python对QT的封装,安装扩展模块,跨平台,与pyqt的API一样,LGPL协议,新软件可以是私有的,代码布局
(6)Kivy: 针对多点触控程序,智能手机平板等,也可以在没有触屏功能的系统上,全平台支持;使用python和cython(python和c语言的接口)编写;中文支持差,需要自己下载中文库并且制定路径。

Windows环境基础安装

基础环境配置:

PyQt5下载

我们在这里针对pyQt5的安装与依赖库的安装,自我认为都是默认的新版本就不会出现什么不兼容的情况,前提的python版本不能过于老旧;
在这里我们需要安装四个:

  • pyqt5
  • pyqt5-tools
  • pyqt5-sip
  • pyqt5-stubs
方法一
pip install PyQt5

如果网速可以的话可以不添加源,如果链接超时请使用↓

pip install PyQt5 -i https://pypi.doubanio.com/simple

后面的依赖库安照此方法依次安装就行!

方法二

打开pycharm,新建项目工程

python QT treewidge设置列宽_app


进入工程文件,打开file,找到setting,找到Project Interpreter,点击**“+”**,输入需要安装的包!

python QT treewidge设置列宽_app_02


python QT treewidge设置列宽_python_03


python QT treewidge设置列宽_pyqt5_04


python QT treewidge设置列宽_app_05


后面的依赖库依次安装就行!

注意!!!注意!!!注意!!! 下一步的Windows环境配置这一步特别重要!特别重要!特别重要!,不然一切将前功尽弃!

Windows环境配置

在这里我们需要注意的是,创建的项目工程所继承的python是公共的环境,还是pycharm里的虚拟环境

如果是公共环境就比如图中的F:\anaconda\python这是我的公共环境,我们在配置QT_PLUGIN_PATH时,就需要去寻找anaconda里面的site-package包里面的PyQt5

python QT treewidge设置列宽_python_06

如果是虚拟环境就直接安照教程配置就行;

配置系统环境变量:

QT_PLUGIN_PATH

python QT treewidge设置列宽_pyqt5_07


变量名:

QT_PLUGIN_PATH

变量值:这里的路径为我们所创建项目文件里面的venv–>Lib–>site-packages–>PyQt5–>Qt5–>plugins

配置好后需要重启电脑!

python QT treewidge设置列宽_app_08

python QT treewidge设置列宽_exe_09


python QT treewidge设置列宽_人工智能_10


千万不能写错,不然会出现

python QT treewidge设置列宽_exe_11


这个错误当时困扰了我两天,卸载了重新安装了很多次,差点就崩溃了,因为当时我创建的为pycharm的虚拟环境,所系需要配置创建项目里面的site-pakage里面的pyqt5库,这是虚拟环境;

检验环境
import sys
from PyQt5 import QtWidgets
 
app = QtWidgets.QApplication(sys.argv)
widget = QtWidgets.QWidget()
widget.resize(360, 360)
widget.setWindowTitle("hello, pyqt5")
widget.show()
sys.exit(app.exec())

如果出现下图中的窗口,则说明安装成功!恭喜你!

python QT treewidge设置列宽_python_12