pyqt5的table数据添加和更新这样做为什么不对???

发布于 2022-09-06 10:31:37 字数 4504 浏览 18 评论 0

正在做一个PyQt的Demo,文件分为

  • add.py 添加窗口UI代码
  • fun.py 动作代码
  • phonebook.py 主页面 UI代码
  • run.py 启动文件
下面是三份文件结构图

图片上传中...

图片上传中...

图片上传中...

这是添加按钮以及对应的动作

图片上传中...

图片上传中...

确认添加的函数

图片上传中...

添加以及处理

图片上传中...

图片上传中...

有关table定义的代码
        self.studentsTableWidget = QtWidgets.QTableWidget(self)
        self.studentsTableWidget.setEnabled(True)
        self.studentsTableWidget.setGeometry(QtCore.QRect(160, 90, 961, 501))
        self.studentsTableWidget.setToolTipDuration(-1)
        self.studentsTableWidget.setStyleSheet("font: 9pt \"楷体\";")
        self.studentsTableWidget.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.studentsTableWidget.setLineWidth(1)
        self.studentsTableWidget.setRowCount(1)
        self.studentsTableWidget.setColumnCount(9)
        self.studentsTableWidget.setObjectName("studentsTableWidget")
        item = QtWidgets.QTableWidgetItem()
        font = QtGui.QFont()
        font.setUnderline(False)
        item.setFont(font)
        self.studentsTableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.studentsTableWidget.setHorizontalHeaderItem(8, item)
        self.studentsTableWidget.horizontalHeader().setVisible(True)
        self.studentsTableWidget.horizontalHeader().setCascadingSectionResizes(True)
        self.studentsTableWidget.horizontalHeader().setDefaultSectionSize(106)
        self.studentsTableWidget.horizontalHeader().setHighlightSections(False)
        self.studentsTableWidget.horizontalHeader().setMinimumSectionSize(54)
        self.studentsTableWidget.horizontalHeader().setSortIndicatorShown(False)
        self.studentsTableWidget.horizontalHeader().setStretchLastSection(False)
        self.studentsTableWidget.verticalHeader().setVisible(False)
        self.studentsTableWidget.verticalHeader().setHighlightSections(True)
        self.studentsTableWidget.verticalHeader().setSortIndicatorShown(False)
        self.studentsTableWidget.verticalHeader().setStretchLastSection(False)
        self.studentsTableWidget.setEditTriggers(QAbstractItemView.NoEditTriggers) #表格内容禁止编辑
        self.studentsTableWidget.setSortingEnabled(True) #设置单击表头进行数据排序
        self.studentsTableWidget.setSelectionBehavior(QAbstractItemView.SelectRows) #整行选中的方式
        self.studentsTableWidget.setSelectionMode(QAbstractItemView.ExtendedSelection) #设置可以选中多个目标

运行之后,没有报错,但是点击添加按钮,table界面无任何反应?????
github源码

求大神指教。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

花心好男孩 2022-09-13 10:31:38

第一张图
addWindow = Ui_addDialog(self) #需要传入父类self或者其它命名,即你想在哪个QWidget面板上增加这个按钮控件,你不能分开写这类增加界面控件的函数

2022-09-13 10:31:38

另外再放个链接吧。pyQt不同窗体间的值传递

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文