能给出这段的完整代码吗
时间: 2024-02-27 11:52:12 浏览: 21
当然可以,以下是完整的代码示例:
``` python
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableWidget, QTableWidgetItem
import sys
import sqlite3
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
# 创建表格
self.table = QTableWidget()
self.setCentralWidget(self.table)
# 连接到数据库
self.conn = sqlite3.connect('employee.db')
self.cursor = self.conn.cursor()
# 执行 SQL 查询
self.query("SELECT * FROM employee")
def query(self, sql):
# 执行 SQL 查询语句
self.cursor.execute(sql)
# 获取查询结果并显示在表格中
self.table.setHorizontalHeaderLabels(["部门", "姓名", "性别", "职位", "工号", "状态"])
rows = self.cursor.fetchall()
if rows:
self.table.setRowCount(len(rows))
self.table.setColumnCount(len(rows[0]))
for i, row in enumerate(rows):
for j, col in enumerate(row):
item = QTableWidgetItem(str(col))
self.table.setItem(i, j, item)
if __name__ == '__main__':
app = QApplication(sys.argv)
win = MyWindow()
win.show()
sys.exit(app.exec_())
```
注意,这段代码仅供参考,具体实现可能需要根据你的具体需求进行修改。另外,如果你的表格依然没有显示列名,可以检查一下表格的水平头部是否已经启用,如果没有启用,你需要添加以下代码:`self.table.horizontalHeader().setVisible(True)`。