PyQt5实现tableWidget|PyQt5实现tableWidget 居中显示

目录

  • PyQt5 tableWidget 居中显示
  • PyQt5 TableWidGet问题

PyQt5 tableWidget 居中显示
newItem = QTableWidgetItem("内容")# 居中显示newItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)


PyQt5 TableWidGet问题 使用pyqt5展示excel的数据到桌面,并获取选中的数据内容
from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.QtGui import QIconfrom PyQt5.QtWidgets import *from PyQt5.QtCore import *import pandas as pdimport numpy as npclass Ui_MainWindow(QMainWindow):def __init__(self):super(QtWidgets.QMainWindow, self).__init__()self.setupUi(self)self.retranslateUi(self)def setupUi(self, MainWindow):MainWindow.setObjectName("MainWindow")MainWindow.resize(666, 488)self.centralWidget = QtWidgets.QWidget(MainWindow)self.centralWidget.setObjectName("centralWidget")self.retranslateUi(MainWindow)self.tableWidget = QtWidgets.QTableWidget(self.centralWidget)self.tableWidget.setGeometry(QtCore.QRect(0, 60, 813, 371))self.tableWidget.setObjectName("tableWidget")self.tableWidget.setColumnCount(0)self.tableWidget.setRowCount(0)self.tableWidget.setStyleSheet("selection-background-color:pink")self.tableWidget.setEditTriggers(QAbstractItemView.NoEditTriggers)self.tableWidget.setSelectionBehavior(QTableWidget.SelectRows)self.tableWidget.raise_()# 设置图标self.pushButton = QtWidgets.QPushButton(self.centralWidget)self.pushButton.setGeometry(QtCore.QRect(90, 20, 75, 23))self.pushButton.setObjectName("pushButton")self.pushButton.setText("打开")MainWindow.setCentralWidget(self.centralWidget)QtCore.QMetaObject.connectSlotsByName(MainWindow)self.pushButton.clicked.connect(self.openfile)self.pushButton.clicked.connect(self.creat_table_show)# 确定self.okButton = QtWidgets.QPushButton(self.centralWidget)self.okButton.setGeometry(QtCore.QRect(180, 20, 75, 23))self.okButton.setObjectName("okButton")self.okButton.setText("确定")MainWindow.setCentralWidget(self.centralWidget)QtCore.QMetaObject.connectSlotsByName(MainWindow)self.okButton.clicked.connect(self.get_select)def retranslateUi(self, MainWindow):_translate = QtCore.QCoreApplication.translateMainWindow.setWindowTitle(_translate("MainWindow", "测试数据"))MainWindow.setWindowIcon(QIcon("./head.jpg"))# MainWindow.show()def get_select(self):# print(self.tableWidget.columnCount()) # 返回列数# print(self.tableWidget.rowCount())# 返回行数colomn = self.tableWidget.columnCount()row_list = set()for i in self.tableWidget.selectionModel().selection().indexes():row_list.add(i.row())# print(row_list)select_data = https://www.it610.com/article/[]for row in row_list:row_data = [self.tableWidget.item(row, p).text() for p in range(colomn)]select_data.append(row_data)print(select_data)def openfile(self):# 获取路径openfile_name = QFileDialog.getOpenFileName(self,'选择文件', '', 'Excel files(*.xlsx , *.xls)')#print(openfile_name)global path_openfile_namepath_openfile_name = openfile_name[0]def creat_table_show(self):# 读取表格,转换表格if len(path_openfile_name) > 0:input_table = pd.read_excel(path_openfile_name)# print(1,input_table)input_table_rows = input_table.shape[0]input_table_colunms = input_table.shape[1]# print(2,input_table_rows)# print(3,input_table_colunms)input_table_header = input_table.columns.values.tolist()#print(input_table_header)#读取表格,转换表格,给tablewidget设置行列表头self.tableWidget.setColumnCount(input_table_colunms)self.tableWidget.setRowCount(input_table_rows)self.tableWidget.setHorizontalHeaderLabels(input_table_header)#给tablewidget设置行列表头#遍历表格每个元素,同时添加到tablewidget中for i in range(input_table_rows):input_table_rows_values = input_table.iloc[[i]]#print(input_table_rows_values)input_table_rows_values_array = np.array(input_table_rows_values)input_table_rows_values_list = input_table_rows_values_array.tolist()[0]#print(input_table_rows_values_list)for j in range(input_table_colunms):input_table_items_list = input_table_rows_values_list[j]#print(input_table_items_list)# print(type(input_table_items_list))#将遍历的元素添加到tablewidget中并显示input_table_items = str(input_table_items_list)newItem = QTableWidgetItem(input_table_items)newItem.setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)self.tableWidget.setItem(i, j, newItem)#遍历表格每个元素,同时添加到tablewidget中else:self.centralWidget.show()if __name__ == "__main__":import sysapp = QtWidgets.QApplication(sys.argv)MainWindow = QtWidgets.QMainWindow()ui = Ui_MainWindow()ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())

【PyQt5实现tableWidget|PyQt5实现tableWidget 居中显示】以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    推荐阅读