小编写这篇文章的主要目的,是用来给大家介绍关于PyQt5中,怎么才能够实现tableWidget居中显示呢?具体的实操,下面就给大家进行详细的介绍一下。
PyQt5 tableWidget居中显示
newItem=QTableWidgetItem("内容") #居中显示 newItem.setTextAlignment(Qt.AlignHCenter|Qt.AlignVCenter)
PyQt5 TableWidGet问题
使用pyqt5展示excel的数据到桌面,并获取选中的数据内容 from PyQt5 import QtCore,QtGui,QtWidgets from PyQt5.QtGui import QIcon from PyQt5.QtWidgets import* from PyQt5.QtCore import* import pandas as pd import numpy as np class 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.translate MainWindow.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=[] 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_name path_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 sys app=QtWidgets.QApplication(sys.argv) MainWindow=QtWidgets.QMainWindow() ui=Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_())
综上所述,关于PyQt5实现tableWidget居中显示内容就为大家介绍到这里了,希望可以给各位读者带来帮助。
原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/3947.html