教程网址 www.python3.vip
求知讲堂2020python+人工智能 https://www.bilibili.com/video/av327814069/?spm_id_from=333.788.b_636f6d6d656e74.47
安装pyside2 在cmd里面敲这个:pip install pyside2 -i https://pypi.douban.com/simple就可以正常下载了。
结果:Successfully installed pyside2-5.15.0 shiboken2-5.15.0
P2
QApplication 提供了整个图形界面程序的底层管理功能,如:初始化,程序入口参数处理,用户事件(对界面的点击,输入,和拖拽)分发给各个对应的控件,官方对QApplication的说明https://doc.qt.io/qt-5/qapplication.html
必须在任何界面控件对象创建前创建他。
app = QApplication([]) 实例化一个空的;window = QMainWindow() 主窗口对象
window.resize(500, 400)窗口大小;window.move(300, 310)窗口移动到距离屏幕左侧300,上边界310
window.setWindowTitle('薪资统计');textEdit = QPlainTextEdit(window)纯文本窗口,挂在父窗口window下面
app.exec_() 死循环,等待用户的输入;button.clicked.connect(handleCalc) 让handleCalc(一个函数)来处理button被点击的操作。
info = textEdit.toPlainText();
QMessageBox.about(window,'统计结果',f'''薪资20000 以上的有:\n{salary_above_20k} \n薪资20000 以下的有:\n{salary_below_20k}''')弹出窗口信息
可以用class将初始化串口那些信息都封装起来,成一个方法,别忘记要初始化。 里面可以定义一个def __init__(self):方法用来初始化,初始化的变量前都加一个self.
P3-P5 开始利用QtDesigner来设计
1.如何引入ui文件
qfile_stats = QFile("Tongji.ui")
qfile_stats.open(QFile.ReadOnly)
qfile_stats.close()
self.window=QUiLoader().load(qfile_stats) #创建实例化对象window
QtDesigner的一些使用细节()
布局好后,可以使用layoutstretch来调整layout中空间的占比大小。因为layout布局好后是不能拖动来改变里面控件大小的(sizepolicy也可i)
颜色方案可以查看显示样式
2.https://blog.csdn.net/Dashi_Lu/article/details/89470039 讲了创建窗口时dialog、widget、mainwindow的区别,简单来说就是main。有菜单,一般用的都是widget
3.添加背景图片!
在设置的项目基类为Widget的时候,不能用setstylesheet设置widget的背景图片。
而要为整个窗口设置背景图片,可以向其中添加一个Frame覆盖这个窗口,这样就可以使用了
QFrame类族是带有边框部件的基类,它的子类有Qlabel,还有QLCDNumber,QSplitter,还有QStackedWidget,QToolBox和QAbstractScrollrea。
添加样式表的时候,要先选择类型!!!添加资源旁边那个小箭头
border-image:url();//拉伸填充 background:url();//平铺 background-image:url();//平铺
P如何用打包python可执行程序https://github.com/pyinstaller/pyinstaller/issues/4233官方github问答
要先pip install pyinstaller
然后pyinstaller httpclient.py --noconsole --hidden-import PySide2.QtXml
这样就会在当前目录下产生一个名为 dist 的目录。里面就有一个名为 httpclient 的目录,我们的可执行程序 httpclient.exe 就在里面。
--noconsole 指定不要命令行窗口;--hidden-import PySide2.QtXml 参数是因为这个 QtXml库是动态导入,PyInstaller没法分析出来,需要我们告诉它,
nltk_data文件夹的添加:
https://www.jianshu.com/p/ef6e23f8e2c1 更改路径
https://blog.csdn.net/u010167269/article/details/63684137 查找路径
我把文件夹放在了F:\python37\python37 不行,还是使用上面那个更改路径的方法,放在C:\Users\sanshui\AppData\Roaming下面才有效
报错解决方法大全https://blog.csdn.net/u014563989/article/details/80940321
https://blog.csdn.net/slc1112/article/details/104234076 少引入包的方法,可以改spec文件
pkg_resources.py2_warn 打包时要加这个包!!! 最后解决的方法是,在spec文件中hiddenimport中加如这个包,然后用pyinstaller ./kouzhao.spec
dll load faileed https://blog.csdn.net/j84491135/article/details/82658530 尝试用这个方法解决
发现不行,还是报错
其实是打包的时候出现了很多warning找不到lib,解决
https://blog.csdn.net/god_wen/article/details/88629865
https://blog.csdn.net/Rayn_Zhu/article/details/106454057
打包时用命令pyinstaller --paths F:\python37\python37\Lib\site-packages\shiboken2 kouzhao.py --hidden-import PySide2.QtXml --hidden-import pkg_resources.py2_warn 找到没找到的lib的路径,打包时指定好路径就好了
仍然会出现win32com 的module找不到,还有TypeError: expected str, bytes or os.PathLike object, not WindowsPath 但是打包出来的exe能用了!
虚拟python环境pipenv中打包更小
https://blog.csdn.net/RYOMARYOMA/article/details/106238214?utm_medium=distribute.pc_relevant.none-task-blog-searchFromBaidu-1.opensearch_close&depth_1-utm_source=distribute.pc_relevant.none-task-blog-searchFromBaidu-1.opensearch_close
pip install opencv-python,pyside2
https://blog.csdn.net/liuyingying0418/article/details/100152759疑问解答,我们可以在命令行执行.exe文件返回错误信息