描述
內容簡介
● 認識 PyQt 和 Qt Designer ● 了解 PyQt5 和 PyQt6 的差異 ● 程式碼均包含 PyQt5 和 PyQt6 版本 ● 程式碼均有一般寫法和 class 寫法 ● 介面與視窗元件 ● 介面佈局方法 ● 行為與事件 ● 樣式、影像和繪圖 ● 十個精選實用範例 Qt 本身是 C++ 的函式庫,而 PyQt 則是 Qt 的分支,是 Python 用來設計使用者介面 ( GUI ) 的函式庫,主要使用 Python 搭配 Qt 進行介面的設計開發,除了能完整利用 Python 語法,也保留了 Qt 的強大功能,目前市面上許多軟體,也會使用 PyQt 進行開發。 雖然 Python 本身內建 Tkinter 函式庫,但 PyQt 能用更容易理解的程式碼,以及更美觀的介面進行設計,此外,PyQt 也可以搭配 Qt Designer ( 針對 Qt 開發者的跨平台介面開發工具 ) 進行開發,並輕鬆的在 Windows、Linux 及 Mac OS 等作業系統運行。 本書是專門介紹 PyQt 的書籍,除了同時介紹 PyQt5 ( 最普及 ) 和 PyQt6 ( 最新 ) 兩種版本,每個範例程式碼都會包含「一般寫法」和「class 寫法」,從最基本的介面與視窗元件,行爲和事件、繪圖與圖形編輯都有詳細介紹,最後也會透過十個常用的精選範例,帶領大家實作出完整的應用。 |
作者
OXXO ( 張宗彥 )
● 高師大附中、中央大學物理系畢業 ● 台灣藝術大學多媒體動畫藝術碩士 ● Webduino 共同創辦人 ( 2015-2020 ) ● STEAM 教育學習網創辦人 ( https://steam.oxxostudio.tw ) ● OXXO.STUDIO 部落格作者 ( https://www.oxxostudio.tw ) |
目錄
第1章:認識 PyQt
1-1 什麼是 PyQt ? 1-2 PyQt 的特色 1-3 安裝 PyQt5 或 PyQt6 函式庫 1-4 PyQt5 和 PyQt6 的初體驗 1-5 使用 class 寫法 1-6 PyQt5 和 PyQt6 的差異
第2章:使用 Qt Designer 2-1 認識 Qt Designer 2-2 下載並安裝 Qt Designer 2-3 Qt Designer 操作介面說明 2-4 產生 .ui 檔案並轉換為 .py 程式碼
第3章:建立應用程式視窗 3-1 建立 QWidget 視窗 3-2 建立 QDialog 視窗 3-3 QWidget 視窗和 QDialog 視窗的差異
第4章:介面元件(顯示與按鈕) 4-1 QLabel 標籤 4-2 QPushButton 按鈕 4-3 QRadioButton 單選按鈕 4-4 QCheckBox 複選按鈕 4-5 QGraphicsView 顯示圖片
第5章:介面元件(輸入與下拉選單) 5-1 QLineEdit 單行輸入框 5-2 QTextEdit QPlainTextEdit 多行輸入框 5-3 QListWidget 列表選擇框 5-4 QComboBox 下拉選單
第6章:介面元件(數值調整) 6-1 QSpinBox QDoubleSpinBox 數值調整元件 6-2 QTimeEdit 時間調整元件 6-3 QDateEdit 日期調整元件 6-4 QSlider 數值調整滑桿 6-5 QProgressBar 進度條
第7章:視窗元件 7-1 QMenuBar QMenu QAction 視窗選單 7-2 QFileDialog 選擇檔案對話視窗 7-3 QMessageBox 對話視窗 7-4 QInputDialog 輸入視窗
第8章:界面佈局 8-1 Layout 佈局 ( 垂直與水平 ) 8-2 Layout 佈局 ( Gird 網格 ) 8-3 Layout 佈局 ( Form 表單 )
第9章:時間、行為與信號 9-1 QTimer 定時器 9-2 QThread 多執行緒 9-3 QtCore.pyqtSignal 信號傳遞
第10章:滑鼠、鍵盤與視窗 10-1 偵測滑鼠事件 10-2 偵測鍵盤事件與快速鍵組合 10-3 偵測與控制視窗 10-4 視窗中開啟新視窗
第11章:樣式設定 11-1 QSS 樣式設定 11-2 常用 QSS 樣式
第12章:繪圖 12-1 QPainter 繪圖 12-2 QPainter 繪圖 ( QPen ) 12-3 QPainter 繪圖 ( 儲存圖片 )
第13章:顯示圖片、影片、聲音和網頁 13-1 顯示圖片的三種方法 13-2 顯示 Matplotlib 圖表 ( 靜態圖表、圖表動畫 ) 13-3 顯示 Pillow 圖片 13-4 顯示 OpenCV 圖片和影片 13-5 QtMultimedia 播放聲音 13-6 QWebEngineView 顯示網頁元件
第14章:範例應用 14-1 簡單計算機 14-2 世界時鐘 ( 顯示各個城市的時間 ) 14-3 開啟多個檔案,儲存為壓縮檔 14-4 發送 LINE Notify ( 文字、表情、圖片 ) 14-5 搭配 OpenCV 實作電腦攝影機 14-6 搭配 OpenCV 實作攝影機拍照和錄影 14-7 搭配 pyaudio 實作簡單錄音機 14-8 小畫家 ( 可調整畫筆顏色 粗細和存檔 ) 14-9 開啟圖片轉檔儲存 ( 可調整品質與尺寸 ) 14-10 調整圖片亮度對比、飽和度、銳利度
|
序
在這個充滿機遇和挑戰的時代,軟體開發領域不斷發展和創新,特別是圖形界面開發方面,Python 的應用日益廣泛。在我自己的工作和學習中,深刻體會到了 PyQt 在軟體開發中的重要性,並且也發現 PyQt 的相關資源相對稀缺。
由於我是一個熱愛網頁前端技術、多媒體設計以及 Python 的網路作家( 應該是吧 ),所以我決定寫下這本《一本精通 - PyQt5 & PyQt6 軟體介面開發》,希望能夠為大家提供一個全面且實用的學習資源,幫助大家更快地掌握 PyQt 的相關知識,進而開發出更加出色的應用程式。 在本書中,我主要從 PyQt 的基礎知識、介面與視窗元件、介面佈局方法、行為與事件、樣式、影像和繪圖等方面進行了全面深入的介紹和講解。每一個章節都包含了 PyQt5 和 PyQt6 版本的程式碼示例,並且分別使用一般寫法和 class 寫法,讓讀者可以更好地理解和掌握。 在撰寫這本書籍的過程中,我不斷反思和檢討自己的寫作風格和思路,希望能夠通過簡潔明瞭的文字、大量豐富的範例程式碼,幫助讀者更好地理解和學習 PyQt 的相關知識,感謝所有在我寫作過程中給予支持和鼓勵的人,包括我的家人、朋友和出版社,希望這本書籍能夠為大家的學習和工作帶來幫助,並且透過 PyQt 開發出更加出色的應用程式,為我們的世界做出更大的貢獻! |