Python GUI 開發手冊:基礎·實戰·強化

明日科技

  • 出版商: 化學工業
  • 出版日期: 2022-04-01
  • 定價: $768
  • 售價: 8.5$653
  • 語言: 簡體中文
  • 頁數: 404
  • 裝訂: 平裝
  • ISBN: 7122406407
  • ISBN-13: 9787122406408
  • 相關分類: Python
  • 下單後立即進貨 (約4週~6週)

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

商品描述

《Python GUI開發手冊:基礎·實戰·強化》是“計算機科學與技術手冊系列”圖書之一,該系列圖書內容全面,
以理論聯繫實際、能學到並做到為宗旨,以技術為核心,以案例為輔助,
引領讀者全面學習基礎技術、代碼編寫方法和具體應用項目。
旨在為想要進入相應領域或者已經在該領域深耕多年的技術人員提供新而全的技術性內容及案例。
本書以Python語言為載體講解GUI開發,分為4篇,分別是:
基礎篇、tkinter模塊實戰篇、PyQt5模塊實戰篇和項目強化篇,共30章。
內容由淺入深,循序漸進,使讀者在打好基礎的同時逐步提陞技能。
本書內容包含了GUI開發的基礎知識和數據庫相關知識,以較大篇幅講解了目前應用較廣的兩個開發模塊
(tkinter和PyQt5)和相應的12個關鍵案例,同時配備了兩個大型項目,使讀者能夠同步做出產品,達到學到並且做到的目的。
本書適合Python GUI開發從業者、Python 開發程序員、
Python 開發以及人工智能的愛好者閱讀,也可供高校計算機相關專業師生參考。

作者簡介

明日科技

吉林省明日科技有限公司,組織編寫,
吉林省明日科技有限公司是一家以數字出版為核心的高新技術企業。
是國內IT信息服務領域的品牌。

吉林省明日科技有限公司的主要產品有圖書、編程詞典、明日學院在線教育等。

2003年1月,明日團隊編程圖書問世,在同等圖書中長期排名前列。
2007年9月,圖書版權輸出到台灣,目前已經有近20本圖書版權輸出到台灣。
2009年11月,圖書已形成軟件工程師入門、軟件工程師典藏等多個系列,共200多本圖書。
2011年,編程詞典(個人版)和編程詞典(珍藏版)系列軟件隆重上市。
《Java從入門到精通》持續八年暢銷全行業書長期位居Java銷售排行榜前列暢銷書[1-2]

目錄大綱

1篇 基礎篇 
1章 認識GUI窗體開發 
1.1 什麼是GUI 3 
1.2 常用的Python GUI框架 3 
1.2.1 tkinter模塊 3 
1.2.2 PyQt5模塊 4 
1.2.3 其他常用GUI開發庫 5 

2章 搭建開發環境 
2.1 Python的下載與安裝 8 
2.1.1 下載Python 8 
2.1.2 安裝Python 10 
2.1.3 測試Python是否安裝成功 12 
2.1.4 Python安裝失敗的解決方法 12 
2.1.5 測試tkinter是否可用 14 
2.2 PyCharm開發工具的下載與安裝 14 
2.2.1 下載PyCharm 14 
2.2.2 安裝PyCharm 15 
2.2.3 啟動並配置PyCharm 16 
2.3 在PyCharm中配置PyQt5環境 19 
2.3.1 安裝PyQt5相關模塊 19 
2.3.2 配置PyQt5設計器及轉換工具 21 

3章 數據庫編程基礎 
3.1 MySQL的安裝與配置 26 
3.1.1 MySQL簡介 26 
3.1.2 下載MySQL 26 
3.1.3 安裝MySQL 27 
3.1.4 配置MySQL 28 
3.2 數據庫作 29 
3.2.1 創建數據庫 30 
3.2.2 查看數據庫 30 
3.2.3 刪除數據庫 31 
3.3 數據表作 31 
3.3.1 創建數據表 31 
3.3.2 查看數據表 32 
3.3.3 修改表結構 33 
3.3.4 刪除數據表 34 
3.4 數據類型 35 
3.4.1 數字類型 35 
3.4.2 字符串類型 36 
3.4.3 日期和時間類型 37 
3.5 數據的增查改刪 37 
3.5.1 增加數據 37 
3.5.2 查詢數據 38 
3.5.3 修改數據 41 
3.5.4 刪除數據 42 
3.6 PyMySQL作數據庫 42 
3.6.1 安裝PyMySQL 42 
3.6.2 連接數據庫 43 
3.6.3 游標對象 43 
【實例3.1】向mrsoft數據庫中添加books數據表 44 
3.6.4 作數據庫 45 
【實例3.2】向books數據表添加圖書數據 45 
3.7 ORM模型 46 
3.7.1 ORM簡介 46 
3.7.2 常用的ORM庫 48 
3.8 綜合案例——從數據庫查詢並篩選數據 48 
3.9 實戰練習 49 

2篇 tkinter模塊實戰篇 
4章 tkinter窗口設計基礎 
4.1 創建窗口 52 
4.2 設置窗口屬性 52 
【實例4.1】為窗口添加標題 53 
4.3 設置窗口位置 53 
【實例4.2】設置窗口大小以及位置 54 
4.4 tkinter窗口設計的核心 54 
4.4.1 Widget組件的分類 54 
4.4.2 Widget的公共屬性 55 
【實例4.3】指定窗口大小以及文字的樣式 56 
4.4.3 Widget的公共方法 58 
4.5 綜合案例——充值成功獲得道具 58 
4.6 實戰練習 59 

5章 tkinter佈局管理 
5.1 pack()方法 61 
5.1.1 pack()方法中的參數總覽 61 
5.1.2 pack()方法中各參數的應用 61 
【實例5.1】設置文字的排列方式 61 
【實例5.2】仿製“確認出本窗口”的會話框 63 
【實例5.3】指定各組件的順序 64 
5.2 grid()方法 65 
5.2.1 grid()方法中參數設置 65 
【實例5.4】顯示4以內的乘法表 65 
5.2.2 rowconfigure()方法和columnconfigure()方法設置組件的縮放比例 67 
【實例5.5】實現在窗口的角中添加4個方塊 67 
5.3 place()方法 68 
5.3.1 、y、width以及height 69 
【實例5.6】佈局華容道遊戲窗口 69 
5.3.2 rel、rely、relwidth和relheight 69 
【實例5.7】佈局跟隨窗口縮放的華容道遊戲窗口 70 
5.4 綜合案例——顯示鬥獸棋遊戲規則 71 
5.5 實戰練習 72 

6章 tkinter常用組件 
6.1 文本類組件 74 
6.1.1 Label標籤組件 74 
【實例6.1】用箭頭指示鬥獸棋遊戲中的規則 74 
6.1.2 Entry單行文本框組件 76 
【實例6.2】實現登錄賬號窗口,並且隱藏密碼 77 
【實例6.3】在窗口中實現兩個加數的和 77 
6.1.3 Tet多行文本框組件 78 
【實例6.4】在Tet組件中添加圖片、文字以及按鈕 78 
6.2 按鈕類組件 81 
6.2.1 Button按鈕組件 81 
【實例6.5】通過按鈕添加圖片 81 
【實例6.6】實現簡易密碼輸入器 82 
6.2.2 Radiobutton單選按鈕組件 83 
【實例6.7】在窗口中顯示一則腦筋急轉彎 84 
6.2.3 Checkbutton複選框組件 85 
【實例6.8】實現問卷調查功能 86 
6.3 列表類組件 86 
6.3.1 Listbo列錶框組件 86 
【實例6.9】獲取列錶框的當前選項 87 
【實例6.10】實現仿遊戲內編輯快捷信號的功能 88 
6.3.2 OptionMenu下拉列表組件 89 
【實例6.11】在下拉列表中顯示歌曲列表 90 
【實例6.12】實現邏輯推理題 90 
6.3.3 Combobo組合框組件 91 
【實例6.13】以管理員的身份查看報表 92 
【實例6.14】實現添加日程功能 92 
6.4 容器類組件 93 
6.4.1 Frame組件 93 
【實例6.15】實現鼠標懸停Frame組件上時的樣式 94 
6.4.2 LabelFrame標籤框架組件 95 
6.4.3 Toplevel頂層窗口組件 95 
【實例6.16】模擬遊戲中玩家匹配房間的功能 96 
6.4.4 tebook選項卡組件 97 
【實例6.17】仿製Win7系統中設置日期和時間窗口選項卡 97 
【實例6.18】實現遊戲介紹的功能 98 
6.5 綜合案例——趣味測試 99 
6.6 實戰練習 100 

7章 會話框與菜單 
7.1 messagebo會話框模塊 102 
7.1.1 會話框的分類 102 
7.1.2 各類會話框的使用 102 
【實例7.1】模擬遊戲中老玩家回歸遊戲的歡迎頁面 103 
【實例7.2】模擬出遊戲警告框 103 
【實例7.3】模擬遊戲異常時顯示的提醒會話框 104 
【實例7.4】製作關閉窗口提醒會話框 105 
【實例7.5】製作關閉窗口會話框 105 
【實例7.6】製作出應用提醒會話框 106 
【實例7.7】模擬打開遊戲失敗時,是否重啟遊戲的會話框 107 
7.2 菜單組件 107 
7.2.1 Menu組件的基本使用 108 
【實例7.8】為遊戲窗口添加菜單 108 
7.2.2 製作二級下拉菜單 108 
【實例7.9】為城市列表添加彈出式菜單 110 
7.2.3 為菜單添加快捷鍵 110 
【實例7.10】設置窗口的文字樣式以及窗口大小 111 
7.2.4 製作工具欄 112 
【實例7.11】實現猜成語遊戲 112 
7.3 樹形菜單 114 
7.3.1 Treeview組件的基本使用 114 
【實例7.12】統計某遊戲中各角色的類型以及作難易程度 115 
7.3.2 為樹形菜單添加圖標 115 
【實例7.13】樹形顯示近一周的天氣狀況 116 
7.3.3 為樹形菜單添加子菜單 116 
7.3.4 菜單項的獲取與編輯 117 
【實例7.14】統計個人出行記錄 118 
7.4 綜合案例——眼力測試小遊戲 121 
7.5 實戰練習 123 

8章 canvas繪圖 
8.1 canvas簡介 125 
【實例8.1】在窗口中創建畫布 125 
8.2 繪製基本圖形 125 
8.2.1 繪製線條 125 
【實例8.2】使用線條繪製五角星 126 
8.2.2 繪製矩形 126 
【實例8.3】通過鍵盤控制正方形移動 127 
8.2.3 繪製橢圓 127 
【實例8.4】繪製簡筆劃人臉 128 
8.2.4 繪製圓弧與扇形 128 
【實例8.5】繪製西瓜形狀的雪糕 129 
8.2.5 繪製多邊形 129 
【實例8.6】繪製七巧板拼接的松鼠圖案 129 
8.2.6 繪製文字 130 
【實例8.7】繪製隨機顏色和字體的文字 130 
8.2.7 繪製圖像 131 
【實例8.8】用鼠標拖動小鳥,幫小鳥回家 131 
8.3 拖動鼠標繪製圖形 132 
【實例8.9】在窗口中進行書法秀 132 
8.4 canvas組件設計動畫 133 
【實例8.10】實現遊戲小貓釣魚 133 
8.5 綜合案例——碰壁的小球 135 
8.6 實戰練習 136 

9章 鼠標鍵盤事件處理 
9.1 鼠標事件 138 
9.2 鍵盤事件 139 
【實例9.1】模擬貪吃蛇遊戲中通過鍵盤控制蛇的移動方向 140 
9.3 綁定多個事件處理程序 141 
9.4 取消事件的綁定 142 
【實例9.2】鍵盤控制方塊只能在窗口內移動 142 
9.5 綜合案例—找顏色眼力測試遊戲 143 
9.6 實戰練習 145 

10章 【案例】滾動大抽獎(tkinter+random+文件讀寫技術實現) 
10.1 案例效果預覽 146 
10.2 案例準備 147 
10.3 業務流程 147 
10.4 實現過程 148 
10.4.1 實現窗口佈局 148 
10.4.2 實現滾動抽獎 148 
10.4.3 實現不重複中獎 149 

11章 【案例】挑戰10秒小程序(tkinter+random+messagebo+計時器實現) 
11.1 案例效果預覽 150 
11.2 案例準備 150 
11.3 業務流程 151 
11.4 實現過程 151 
11.4.1 實現窗口佈局 151 
11.4.2 判斷挑戰開始與結束和挑戰結果 153 
11.4.3 實現計時功能 153 

12章 【案例】音樂機器人(tkinter+winsound+random實現) 
12.1 案例效果預覽 154 
12.2 案例準備 155