qtablewidget设置当前点击行
时间: 2023-10-05 18:04:20 浏览: 171
要设置QTableWidget中当前点击的行,可以使用QTableWidget的itemClicked信号和currentRow方法。具体步骤如下:
1. 连接itemClicked信号到一个自定义槽函数,该槽函数会获取当前点击的行数并将其保存。
2. 在需要设置当前行的地方,调用QTableWidget的currentRow方法获取保存的行数,然后使用setCurrentCell方法设置当前单元格为该行的第一个单元格。
下面是一个示例代码:
```python
from PyQt5.QtWidgets import QTableWidget, QTableWidgetItem
class MyTableWidget(QTableWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.currentRow = -1 # 初始化为-1表示没有选中任何行
self.itemClicked.connect(self.on_item_clicked)
def on_item_clicked(self, item):
self.currentRow = item.row()
def set_current_row(self):
if self.currentRow != -1:
self.setCurrentCell(self.currentRow, 0) # 设置当前单元格为该行的第一个单元格
```
在上面的示例代码中,我们定义了一个MyTableWidget类,继承自QTableWidget类,并重写了其itemClicked方法。在itemClicked方法中,我们获取当前点击的行数并将其保存在self.currentRow变量中。在set_current_row方法中,我们判断是否有选中的行,如果有,就使用setCurrentCell方法将当前单元格设置为该行的第一个单元格。
阅读全文