文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

PyQt5如何实现tableWidget居中显示

2023-07-02 17:22

关注

这篇文章主要介绍“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.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居中显示”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯