Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗

孫洋洋、王碩 著

  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-1
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-2
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-3
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-4
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-5
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-6
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-7
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-8
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-9
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-10
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-11
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-12
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-13
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-14
  • Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-15
Python 精解實例 - PySide 6/PyQt 6 強大開發親身體驗-preview-1

買這商品的人也買了...

商品描述

本書結構

  本書共9 章,包含PySide 6 / PyQt 6 常用知識及一些經典的應用。每章的側重點不同,並且相對獨立,讀者根據目錄即可獲取自己所需的內容。

  第1 章介紹PySide / PyQt 的入門知識,主要介紹PySide PyQt 的基本概念、PySide 6 / PyQt 6 的安裝和使用(包括Qt Designer 等工具的初步用法)、常見IDEPyCharmVSCodeEric 7)的安裝、設定與使用。已經有一定基礎的讀者可以略過本章。

  第2章介紹Qt Designer 的詳細用法。Qt Designer PySide / PyQt的視覺化介面編輯程式,透過拖曳滑鼠等視覺化操作就可以快速開發出GUI 檔案(*.ui 檔案),可以透過官方提供的uic 工具把.ui 檔案自動轉為.py 檔案。本章介紹了PySide / PyQt 程式開發流程,如版面配置管理、訊號與槽連結、功能表列與工具列、增加與轉換資源檔等。對PySide / PyQt 初學者來說,這些是實現快速入門和快速進步的重要內容。第3 章和第4章介紹PySide / PyQt的基本視窗控制項的使用方法。第1章介紹了PySide / PyQt 的環境設定,第2章介紹了PySide / PyQt 完整的開發流程,接下來讀者最想知道的是PySide / PyQt 有哪些常用控制項和如何使用這些控制項,這就是第3章和第4章要解決的問題。

  第5章介紹PySide / PyQt的特殊控制項——表格與樹。本章主要介紹表格與樹的用法,入門非常簡單。如果想要更進一步,還需要理解Model / View / Delegate(模型 / 視圖 / 委託)框架,這也是表格與樹的特殊之處。此外,資料量較大的表格往往需要資料庫的支撐,所以本章會涉及資料庫的相關內容。

6 章介紹一些進階視窗控制項。本章主要介紹第3 5 章沒有涉及的其他常用控制項或內容,這也是介紹控制項的最後一章。本章介紹的控制項相對進階一些,比較常用的是版面配置管理與多視窗控制項(容器)。本章還介紹了視窗風格、多執行緒、網頁互動、QSS UI 美化等內容,最後以Qt QuickQML)收尾。

7章介紹訊號 / 槽和事件。本章對PySide / PyQt 的進階內容進行收尾,是介紹PySide / PyQt 框架的最後一部分內容。前面幾章初步介紹了訊號 / 槽的使用方法,但不夠詳細,本章會對訊號 / 槽和事件進行系統性的介紹,如內建訊號 / 槽、自訂訊號 / 槽、裝飾器訊號 / 槽、訊號 / 槽的斷開與連接、多執行緒訊號 / 槽、事件處理的常用方法等。

8章介紹Python的擴充應用。第1 7章介紹的是PySide / PyQt框架的內容,本章介紹PythonPySide / PyQt 的擴充。學習PySide / PyQt 的一大好處是可以結合Python 生態提高開發效率。Python 生態非常多,本章只介紹部分常用生態,如PyInstallerPandasMatplotlibPyQtGraph Plotly 等,使用這些生態可以更快地開發出GUI 程式。

9章介紹PySide / PyQt 的實戰應用。本章介紹了兩個應用供讀者參考,一個是在量化投資中的應用,另一個是在券商投資研發中的應用。

此外,本書的附錄內容也很重要。

附錄A介紹PySide / PyQt 各個版本之間相互轉換的問題,主要包括以下兩部分內容。

■■ PySide 6 / PyQt 6 之間的相互轉換。

■■ PySide 2 / PyQt 5 轉為 PySide 6 / PyQt 6

附錄B透過一個案例來分析如何把Qt C++ 程式碼轉為PySide /PyQt Python 程式碼。Qt 的生態比PySide / PyQt 更豐富一些,有時需要把Qt demo 轉換成PySide / PyQt demo,讀者可以參考這部分內容。

附錄C列舉一些常用表格目錄。本書將很多列舉、屬性和函式參數等的用法以表格的形式呈現,絕大部分表格可以根據目錄快速定位到,比較常用但又沒有辦法快速定位到的在這裡以表格形式列出。

附錄D列舉一些筆者了解的基於PySide / PyQt 的優秀開放原始碼專案。本書只會對這些專案進行簡單介紹,感興趣的讀者可自行研究。

作者簡介

孫洋洋

就職於國營保險公司資管部門,負責公司量化投研體系的開發與維護以及策略研發。熟悉多種程式設計語言,目前以Python為主。擅長量化投資與程式GUI開發、網路爬蟲、機器學習,在金融量化投資領域有多年工作經驗。

 

王碩

現從事PythonGoJava的相關工作,熱愛並長期專注於前端開發,巨量資料和高性能計算技術的研究,積累了大量的一線開發經驗,具有豐富的工業級系統開發和運維實戰經驗。

目錄大綱

目錄

1 認識PySide 6 / PyQt 6

1.1 PySide 6 / PyQt 6框架簡介

1.2 架設PySide 6 / PyQt 6環境

1.3 PySide 6快捷工具簡介

1.4 常用IDE的安裝設定與使用

1.5 PySide / PyQt的啟動方式

2 Qt Designer的使用

2.1 Qt Designer快速入門

2.2 版面配置管理入門

2.3 Qt Designer實戰應用

2.4 訊號與槽連結

2.5 功能表列與工具列

2.6 增加圖片(資源檔)

3 基本視窗控制項(上)

3.1 主視窗(QmainWindow / QWidget / QDialog

3.2 標籤(QLabel

3.3 單行文字標籤(QLineEdit

3.4 多行文字標籤(QtextEdit / QPlainTextEdit

3.5 按鈕類別控制項

3.6 工具按鈕(QToolButton

3.7 下拉式清單方塊(QComboBox

3.8 微調框(QspinBox / QDoubleSpinBox

3.9 日期時間控制項

3.10 滑動控制項

3.11 區域捲動(QScrollArea

4 基本視窗控制項(下)

4.1 對話方塊類別控制項(QDialog族)

4.2 視窗繪圖類別控制項

4.3 拖曳與剪貼簿

4.4 功能表列、工具列、狀態列與快速鍵

4.5 其他控制項

5 表格與樹

5.1 QListWidget

5.2 QTableWidget

5.3 QTreeWidget

5.4 模型 / 視圖 / 委託框架

5.5 QListView

5.6 QTableView

5.7 QTreeView

5.8 自訂模型

5.9 自訂委託

5.10 Qt資料庫

6 高級視窗控制項

6.1 視窗風格

6.2 版面配置管理

6.3 容器:加載更多的控制項

6.4 多執行緒

6.5 網頁互動

6.6 QSSUI美化

6.7 QML淺議

7 訊號 / 槽和事件

7.1 訊號與槽的簡介

7.2 訊號與槽的案例

7.3 訊號與槽的參數

7.4 基於Qt Designer的訊號與槽

7.5 事件處理機制

8 Python的擴充應用

8.1 使用PyInstaller打包專案生成.exe檔案

8.2 PandasPySide / PyQt中的應用

8.3 MatplotlibPyQt中的應用

8.4 PyQtGraphPyQt中的應用

8.5 PlotlyPyQt中的應用

9 實戰應用

9.1 在量化投資中的應用

9.2 在券商投資研發中的應用

附錄A Qt for Python程式轉換

附錄B C++ to Python程式轉換

附錄C 本書一些通用列舉表格目錄

附錄D 優秀PySide / PyQt開放原始碼專案推薦