PyQt5 QSqlTableModel 修改事件

背景:

最近这段时间在帮别人开发一个VPS管理系统,用到了QTableView + QSqlTableModel,作为Table显示

问题:

想要捕获双击修改单元格内容的事件

方法:

使用QSqlTableModel的signals -- beforeUpdate,当单元格内容改变,就获取那一行的数据

self.model.beforeUpdate.connect(self.changeitem)    #更新之后
    def changeitem(self):
        index = self.tableView.currentIndex()
        if not index.isValid():
            return
        record = self.model.record(index.row())
        did = record.value(ID)
        dname = record.value(USERNAME)
        dphone = record.value(PHONE)
        post = db.postdata()
        result = post.updatevpsuserinfo([did,dname,dphone])

官方文档链接:https://pyqt.readthedocs.io/en/latest/api/qtsql/qsqltablemodel.html?highlight=qsqltablemodel#editstrategy

猜你喜欢

转载自blog.csdn.net/liucx9710/article/details/85163120