本次分享主要是介紹使用表格控件顯示從資料庫中取出的資料。 一、資料準備1、建立資料庫 本次利用安裝好的資料庫管理軟體DBeaver,打開建立Mysql連接配接,輸入主機名或IP位址:“localhost”或“127.0.0.1”,輸入mysql資料庫登入賬号密碼,本機均設定為“root”。最後點選“确定”,即可建立本地mysql資料庫連接配接。 接着建立一個名為“test”的資料庫,操作步驟:右鍵單擊“資料庫”—選擇“建立資料庫”菜單項—輸入資料庫資訊,見下示意圖。

2、建立資料表
向資料庫中添加資料表
如在“test”資料庫中建立一個名叫“Build_data”的資料表,資料表單含義見下表
字段 | 字段類型 | 字段定義 |
id | int | 建築編碼 |
build_name | varchar(50) | 建築名稱 |
branchid | varchar(8) | 支路編号 |
record_date | date | 接受時間 |
vals | decimal(10,2) | 儀表數值 |
item_type | int(8) | 分項類型 |
name | varchar(50) | 支路名稱 |
3、操作Mysql資料表
Mysql資料表的操作主要包括資料的增、删、改、查,與操作SQLite類似。
示例向“Build_data”的資料表中新增加資料。可以使用excute()方法添加一條記錄,也可以使用executemany()方法批量添加多條記錄
上具體代碼-操作Mysql資料表,向表中插入多條資料記錄
二、表格控件顯示資料
PyQt5使用TableWidget表格控件顯示資料主要用到QTableWidgetItem類,使用該類建立表格中的單元格,并指定顯示文本或其他設定,即可使用TableWidget對象中setItem()方法将其添加到表格中。TableWidget常用方法及說明見PyQt5資料表格控件(一)。
具體表格中單元格對象編輯方法未介紹,一個表由多個單元格組成,QTableWidgetItem類表示QTableWidget中的單元格。QTableWidgetItem類常用方法及說明見下表。
setText() | 設定機關格的文本 |
setCheckState() | 設定指定單元格的選中狀态 1、Qt.Checked,單元格選中 2、Qt.Unchecked,單元格未選中 |
setIcon() | 為單元格設定圖示 |
setBackground() | 設定單元格背景色 |
setForeground() | 設定單元格内文本顔色 |
setFont() | 設定單元格内文本的字型 |
setSelected() | 設定是否選中單元格 |
text() | 擷取單元格文本 |
示例操作:使用PyMysql子產品從資料庫中查詢資料,并且将資料顯示到TableWidget表格中。
操作Mysql資料表
設定指定列的排序方式 使用QTableWidget對象的sortItems()方法,設定表格中指定列排序方式
指定列顯示圖檔
向指定列添加标準控件
其次合并單元格,此處不再累贅,見PyQt5資料表格控件(一)