如何保存已编辑的 PyQt5 TableWidget 单元格?
How to save edited PyQt5 TableWidget cell?
我有一个带有 QTableWidget 的应用程序。当用户点击一个单元格时,他可以编辑它,并且可以写任何东西。完成后,他按 'enter' 键完成对单元格的编辑。
我想在输入键后立即获取新的单元格值,并使用按键将其保存到文件中。
#keyPressEvent
self.tableWidget.keyPressEvent = self.KeyPressed
def KeyPressed(self,event):
if event.key() == Qt.Key_Return:
row = self.tableWidget.currentRow()
col = self.tableWidget.currentColumn()
print(self.tableWidget.item(row, col).text())
这是按键代码,但是当按键被按下时它得到的是旧值。
对此有任何解决方案,或任何其他将编辑后的单元格保存到文件的方法吗?
你必须在主程序中调用它 class:
self.tableWidget.itemChanged.connect(self.save_changes)
@pyqtSlot()
def save_changes(self):
for currentQTableWidgetItem in self.tableWidget.selectedItems():
projectName = self.tableWidget.item(currentQTableWidgetItem.row(), 0).text()
#save changes to a .csv file with pandas
我有一个带有 QTableWidget 的应用程序。当用户点击一个单元格时,他可以编辑它,并且可以写任何东西。完成后,他按 'enter' 键完成对单元格的编辑。
我想在输入键后立即获取新的单元格值,并使用按键将其保存到文件中。
#keyPressEvent
self.tableWidget.keyPressEvent = self.KeyPressed
def KeyPressed(self,event):
if event.key() == Qt.Key_Return:
row = self.tableWidget.currentRow()
col = self.tableWidget.currentColumn()
print(self.tableWidget.item(row, col).text())
这是按键代码,但是当按键被按下时它得到的是旧值。
对此有任何解决方案,或任何其他将编辑后的单元格保存到文件的方法吗?
你必须在主程序中调用它 class:
self.tableWidget.itemChanged.connect(self.save_changes)
@pyqtSlot()
def save_changes(self):
for currentQTableWidgetItem in self.tableWidget.selectedItems():
projectName = self.tableWidget.item(currentQTableWidgetItem.row(), 0).text()
#save changes to a .csv file with pandas