PyQt 從入門到精通

明日科技

  • PyQt 從入門到精通-preview-1
  • PyQt 從入門到精通-preview-2
  • PyQt 從入門到精通-preview-3
PyQt 從入門到精通-preview-1

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

商品描述

《PyQt從入門到精通》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用PyQt5進行Python GUI應用程序開發應該掌握的各方面技術。全書共分20章,包括PyQt5入門,Python的下載與安裝,搭建PyQt5開發環境,Python語言基礎,Python中的序列,Python面向對象基礎,創建第一個PyQt5程序,PyQt5窗口設計基礎,PyQt5常用控件的使用,PyQt5佈局管理,菜單、工具欄和狀態欄,PyQt5高級控件的使用,對話框的使用,使用Python操作數據庫,表格控件的使用,文件及文件夾操作,PyQt5繪圖技術,多線程編程,PyQt5程序的打包發布,學生信息管理系統(PyQt5+MySQL+PyMySQL模塊實現)等。

作者簡介

明日科技,全稱是吉林省明日科技有限公司,是一家專業從事軟件開發、教育培訓以及軟件開發教育資源整合的高科技公司,其編寫的教材非常注重選取軟件開發中的必需、常用內容,同時也很注重內容的易學、方便性以及相關知識的拓展性,深受讀者喜愛。其教材多次榮獲“全行業優秀暢銷品種”“全國高校出版社優秀暢銷書”等獎項,多個品種長期位居同類圖書銷售排行榜的前列。

目錄大綱

第1篇基礎知識
第1章PyQt5入門2
1.1 Python語言介紹2
1.1.1了解Python 2
1.1.2 Python的版本3
1.1.3 Python的應用領域3
1.2 GUI與PyQt5 5
1.2.1 GUI簡介5
1.2. 2什麼是PyQt5 6
1.2.3 PyQt5與Qt的關係7
1.2.4 PyQt5的主要模塊8
1.2.5其他常用GUI開發庫9
1.3小結10

第2章Python的下載與安裝11
2.1 Python環境概述11
2.2在Windows系統中安裝Python 12
2.2.1下載Python 12
2.2.2安裝Python 13
2.2.3測試Python安裝是否成功15
2.2.4 Python安裝失敗的解決方法16
2.3在Linux系統中安裝Python 18
2.3.1通過虛擬機安裝Ubuntu系統18
2.3.2使用並更新已有Python 20
2.3.3重新安裝Python 23
2.4在Mac OS系統中安裝Python 27
2.4.1下載安裝文件27
2.4.2安裝Python 28
2.4.3安裝安全證書30
2.4.4打開並使用Python 31
2.4.5更新pip及換源32
2.5小結33

第3章搭建PyQt5開發環境34
3.1 PyCharm開發工具的下載與安裝34
3.1.1下載PyCharm 34
3.1.2安裝PyCharm 35
3.1.3啟動並配置PyCharm 36
3.2在PyCharm中配置PyQt5環境38
3.2.1安裝PyQt5及設計器38
3.2.2配置PyQt5設計器及轉換工具42
3.3小結44

第4章Python語言基礎45
4.1變量45
4.1.1變量的命名和賦值45
4.1.2變量的基本類型46
4.1.3變量的輸入與輸出49
4.2運算符51
4.2.1算術運算符51
4.2.2賦值運算符52
4.2 .3比較(關係)運算符53
4.2.4邏輯運算符54
4.2.5位運算55
4.3流程控制語句58
4.3.1順序結構58
4.3.2條件分支結構59
4.3.3循環結構63
4.4小結70

第5章Python中的序列71
5.1列表與元組71
5.1.1列表的創建71
5.1.2檢測列表元素73
5.1.3列表截取—切片73
5.1.4列表的拼接74
5.1.5遍歷列表75
5.1 .6列表排序77
5.1.7元組79
5.2字典與集合82
5.2.1字典的定義82
5.2.2遍歷字典85
5.2.3集合簡介86
5.3小結87

第6章Python面向對象基礎88
6.1函數88
6.1 .1函數的定義88
6.1.2調用函數90
6.1.3參數傳遞91
6.2面向對象編程基礎96
6.2.1面向對象概述96
6.2.2類的定義和使用98
6.3小結106

第7章創建第一個PyQt5程序107
7.1認識Qt Designer 107
7.1.1幾種常用的窗口類型107
7.1.2熟悉Qt Designer窗口區域110
7.2使用Qt Designer創建窗口114
7.2.1 MainWindow介紹114
7.2.2創建主窗口114
7.2.3設計主窗口114
7.2.4預覽窗口效果115
7.2.5查看Python代碼116
7.2.6將.ui文件轉換為.py文件116
7.2.7運行主窗口117
7.3小結118

第8章PyQt5窗口設計基礎119
8.1熟悉窗口的屬性119
8.2對窗口進行個性化設置120
8.2.1基本屬性設置120
8.2.2更換窗口的圖標122
8.2.3設置窗口的背景123
8.2.4控制窗口透明度130
8.2.5設置窗口樣式131
8.3信號與槽機制132
8.3.1信號與槽的基本概念132
8.3.2編輯信號與槽133
8.3.3自定義槽135
8.3.4將自定義槽連接到信號135
8.4多窗口設計135
8.4.1多窗口的建立136
8.4.2設置啟動窗口137
8.4.3窗口之間的關聯137
8.5小結138

第2篇核心技術
第9章PyQt5常用控件的使用140
9.1控件概述140
9.1.1認識控件140
9.1.2控件的命名規範141
9.2文本類控件142
9.2.1 Label:標籤控件142
9.2.2 LineEdit:單行文本框145
9.2.3 TextEdit:多行文本框147
9.2.4 SpinBox:整數數字選擇控件148
9.2.5 DoubleSpinBox:小數數字選擇控件149
9.2.6 LCDNumber:液晶數字顯示控件150
9.3按鈕類控件152
9.3.1 PushButton:按鈕152
9.3.2 ToolButton:工具按鈕154
9.3.3 CommandLinkBut​​ton:命令鏈接按鈕155
9.3.4 RadioButton:單選按鈕156
9.3.5 CheckBox:複選框158
9.4選擇列表類控件160
9.4.1 ComboBox:下拉組合框160
9.4.2 FontComboBox:字體組合框161
9.4.3 ListWidget:列表162
9.5容器控件164
9.5.1 GroupBox:分組框164
9.5.2 TabWidget:選項卡165
9.5.3 ToolBox:工具盒167
9.6日期時間類控件171
9.6.1日期和(或)時間控件171
9.6.2 CalendarWidget:日曆控件173
9.7小結175

第10章PyQt5佈局管理176
10.1線性佈局176
10.1.1 VerticalLayout:垂直佈局177
10.1.2 Horizo​​ntalLayout:水平佈局178
10.2 GridLayout:網格佈局180
10.2.1網格佈局的基本使用180
10.2.2跨越行和列的網格佈局182
10.3 FormLayout:表單佈局184
10.4佈局管理器的嵌套186
10.4.1嵌套佈局的基本使用186
10.4.2通過嵌套佈局設計一個微信聊天窗口187
10.5 MDIArea:MDI窗口設計189
10.5.1認識MDI窗口189
10.5.2子窗口基礎類190
10.5.3 MDI子窗口的動態添加及排列191
10.6小結193

第11章菜單、工具欄和狀態欄194
11.1菜單194
11.1.1菜單基礎類194
11.1.2添加和刪除菜單196
11.1.3設置菜單項196
11.1.4為菜單設置快捷鍵197
11.1.5為菜單設置圖標197
11.1.6菜單的功能實現198
11.2工具欄200
11.2.1工具欄類:QToolBar 200
11.2.2添加工具欄201
11.2.3為工具欄添加圖標按鈕201
11.2.4一次為工具欄添加多個圖標按鈕202
11.2.5向工具欄中添加其他控件202
11.2.6設置工具欄按鈕的大小203
11.2.7工具欄的單擊功能實現203
11.3狀態欄205
11.3.1狀態欄類:QStatusBar 205
11.3.2添加狀態欄206
11.3.3向狀態欄中添加控件206
11.3.4在狀態欄中顯示和刪除臨時信息206
11.3.5在狀態欄中實時顯示當前時間207
11.4小結209

第12章PyQt5高級控件的使用210
12.1進度條類控件210
12.1.1 ProgressBar:進度條210
12.1.2自定義等待提示框214
12.1.3滑塊:QSlider 216
12.2樹控件219
12.2.1 TreeView:樹視圖219
12.2.2 TreeWidget:樹控件224
12.3分割控件227
12.3.1分割線:QFrame 228
12.3.2彈簧:QSpacerItem 230
12.4其他控件231
12.4.1 Dial:旋鈕控件231
12.4.2滾動條:QScrollBar 233
12.5小結234

第13章對話框的使用235
13.1 QMessageBox:對話框235
13.1.1對話框的種類235
13.1.2對話框的使用方法236
13.1.3與對話框進行交互237
13.2 QFileDialog:文件對話框238
13.2.1 QFileDialog類概述238
13.2.2使用QFileDialog選擇文件239
13.2.3使用QFileDialog選擇文件夾241
13.3 QInputDialog:輸入對話框242
13.3.1 QInputDialog概述242
13.3.2 QInputDialog對話框的使用243
13.4字體和顏色對話框246
13.4.1 QFontDialog:字體對話框246
13.4.2 QColorDialog:顏色對話框247
13.4.3字體和顏色對話框的使用247
13.5小結249

第14章使用Python操作數據庫250
14.1數據庫編程接口250
14.1.1連接對象250
14.1.2游標對象251
14.2使用內置的SQLite 252
14.2.1創建數據庫文件252
14.2.2操作SQLite 253
14.3 MySQL數據庫的使用257
14.3.1下載安裝MySQL 258
14.3.2安裝PyMySQL模塊262
14.3.3連接數據庫262
14.3.4創建數據表263
14.3.5操作MySQL數據表265
14.4小結266

第15章表格控件的使用267
15.1 TableWidget表格控件267
15.2在表格中顯示數據庫數據269
15.3隱藏垂直標題270
15.4設置最後一列自動填充容器271
15.5禁止編輯單元格272
15.6設置單元格的文本顏色272
15.7設置指定列的排序方式273
15.8在指定列中顯示圖片273
15.9向指定列中添加PyQt5標準控件274
15.10合併指定單元格275
15.11小結276

第3篇高級應用
第16章文件及文件夾操作278
16.1 Python內置的文件操作278
16.1.1創建和打開文件278
16.1.2關閉文件280
16.1.3打開文件時使用with語句280
16.1.4寫入文件內容281
16.1.5讀取文件282
16.1.6複製文件284
16.1.7移動文件284
16.1.8重命名文件285
16.1.9刪除文件285
16.1.10獲取文件基本信息286
16.2 Python內置的文件夾操作288
16.2.1獲取文件夾路徑288
16.2.2判斷文件夾是否存在290
16.2.3創建文件夾290
16.2.4複製文件夾291
16.2.5移動文件夾292
16.2.6重命名文件夾292
16.2.7刪除文件夾293
16.2.8遍歷文件夾293
16.3 PyQt5中的文件及文件夾操作296
16.3.1使用QFile類操作文件296
16.3.2使用QDir類操作文件夾300
16.4小結305

第17章PyQt5繪圖技術306
17.1 PyQt5繪圖基礎306
17.2設置畫筆與畫刷308
17.2.1設置畫筆:QPen 308
17.2.2設置畫刷:QBrush 310
17.3繪製文本314
17.3.1設置字體:QFont 315
17.3.2繪製文本316
17.4繪製圖像317
17.5小結319

第18章多線程編程320
18.1線程概述320
18.1.1線程的定義與分類320
18.1.2多線程的優缺點321
18.2 QTimer:計時器322
18.3 QThread:線程類325
18.3. 1線程的實現325
18.3.2線程的生命週期327
18.3.3線程的應用328
18.4小結330

第19章PyQt5程序的打包發布331
19.1安裝Pyinstaller模塊331
19.2打包普通Python程序332
19.3打包PyQt5程序333
19.4打包資源文件335
19.5小結336

第4篇項目實戰
第20章學生信息管理系統(PyQt5 MySQL PyMySQL模塊實現) 338
20.1需求分析338
20.2系統設計338
20.2.1系統功能結構339
20.2.2系統業務流程339
20.2. 3系統預覽340
20.3系統開發必備341
20.3.1系統開發環境341
20.3.2系統組織結構341
20.4數據庫設計342
20.4.1數據庫結構設計342
20.4.2數據表結構設計342
20.4.3視圖設計343
20.5公共模塊設計344
20.5.1模塊導入及公共變量344
20.5.2打開數據庫連接345
20.5.3數據的增刪改345
20.5.4數據的查詢方法346
20.6登錄模塊設計346
20.6.1登錄模塊概述346
20.6.2模塊的導入347
20.6.3登錄功能的實現347
20.6.4退出登錄窗體348
20.6.5在Python中啟動登錄窗體348
20.7主窗體模塊設計349
20.7.1主窗體概述349
20.7.2模塊導入及窗體初始化349
20.7.3在主窗體中打開其他功能窗體350
20.7.4顯示當前登錄用戶和登錄時間351
20.8年級設置模塊設計351
20.8.1年級設置模塊概述351
20.8.2模塊的導入351
20.8.3窗體加載時顯示所有年級信息352
20.8.4年級信息的添加352
20.8 .5年級信息的修改353
20.8.6年級信息的刪除354
20.9學生信息管理模塊設計355
20.9.1學生信息管理模塊概述355
20.9.2根據年級顯示對應班級355
20.9.3學生信息的查詢356
20.9.4添加學生信息357
20.9.5根據選中編號顯示學生詳細信息358
20.9.6修改學生信息358
20.9.7刪除學生信息359
20.10學生信息查詢模塊設計359
20.10.1學生信息查詢模塊概述360
20.10.2學生信息查詢功能的實現360
20.11小結361