Oct-07-2022, 09:42 AM
You can do something like that, but it woks only using Ctrl+Down Key
It scrolls selected row to top
It scrolls selected row to top
class Table(PyQt5.QtWidgets.QTableView): def __init__(self): super().__init__() self.rownum = 200 self.colnum = 10 self.y = [] self.delegate = TableDelegate() self.setItemDelegate(self.delegate) self.vscroll = self.verticalScrollBar() self.set_row_height() def keyPressEvent(self, event): if event.key() == PyQt5.QtCore.Qt.Key_Down: print("down key") index = self.currentIndex() self.scrollTo(index, PyQt5.QtWidgets.QAbstractItemView.PositionAtTop) super().keyPressEvent(event) ....