pyqt5 tablewidget 怎么为不同的单元格添加不同的点击事件
时间: 2023-05-12 08:04:26 浏览: 213
对于 pyqt5 tablewidget,您可以使用 itemClicked 信号来为单元格添加点击事件。以下是一个示例代码:
```python
from PyQt5.QtWidgets import QApplication, QTableWidget, QTableWidgetItem
from PyQt5.QtCore import Qt
class MyTableWidget(QTableWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.setColumnCount(2)
self.setRowCount(2)
self.setItem(0, 0, QTableWidgetItem("Cell 1"))
self.setItem(0, 1, QTableWidgetItem("Cell 2"))
self.setItem(1, 0, QTableWidgetItem("Cell 3"))
self.setItem(1, 1, QTableWidgetItem("Cell 4"))
self.itemClicked.connect(self.handleItemClicked)
def handleItemClicked(self, item):
row = item.row()
col = item.column()
if row == 0 and col == 0:
print("Clicked on Cell 1")
elif row == 0 and col == 1:
print("Clicked on Cell 2")
elif row == 1 and col == 0:
print("Clicked on Cell 3")
elif row == 1 and col == 1:
print("Clicked on Cell 4")
if __name__ == '__main__':
app = QApplication([])
table = MyTableWidget()
table.show()
app.exec_()
```
在这个示例中,我们创建了一个 QTableWidget,并为其添加了四个单元格。然后,我们连接了 itemClicked 信号到 handleItemClicked 方法上。在 handleItemClicked 方法中,我们检查了点击的单元格的行和列,然后根据不同的行和列来执行不同的操作。您可以根据自己的需求来修改这个方法。
阅读全文