QTableWidget选择行改变时触发函数
时间: 2024-10-29 18:06:05 浏览: 32
Pyqt5 QTableWidget/QTableView 行表头添加复选框全选功能
5星 · 资源好评率100%
在QTableWidget中,当用户通过鼠标点击或者键盘操作选择一行时,你可以设置一个槽函数(slot function)来监听`currentRowChanged`信号。这个信号会在当前选中的行发生变化时触发。下面是一个简单的例子:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QTableWidget
class MyTableWidget(QWidget):
def __init__(self):
super().__init__()
self.table = QTableWidget()
# 初始化表格...
# 设置信号连接
self.table.currentRowChanged.connect(self.row_changed)
def row_changed(self, current_row, previous_row):
"""
当表中行被选择时,这个函数会被调用。
`current_row`参数表示新的当前行索引,
`previous_row`参数表示旧的当前行索引,如果无变化则为None。
可在此函数中处理相关的业务逻辑。
"""
print(f"当前行已切换到第{current_row}行")
# 启动应用并显示窗口
if __name__ == "__main__":
app = QApplication([])
widget = MyTableWidget()
widget.show()
app.exec_()
```
在这个例子中,当你选择QTableWidget中的任意一行,`row_changed`函数就会被执行,并打印出新的行号。
阅读全文