教程網址 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
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文件返回錯誤信息