QTableWidget 直接滚动到指定表项的位置
您可以使用scrollToItem()方法将QTableWidget滚动到指定表项的位置。
以下是一个示例代码:
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableWidget, QTableWidgetItem, QVBoxLayout, QWidget, QPushButton
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.table_widget = QTableWidget()
self.table_widget.setRowCount(10)
self.table_widget.setColumnCount(10)
for row in range(10):
for column in range(10):
item = QTableWidgetItem(f"({row}, {column})")
self.table_widget.setItem(row, column, item)
layout = QVBoxLayout()
layout.addWidget(self.table_widget)
widget = QWidget()
widget.setLayout(layout)
self.setCentralWidget(widget)
button = QPushButton("Scroll to (5, 5)")
button.clicked.connect(self.scroll_to_item)
layout.addWidget(button)
def scroll_to_item(self):
item = self.table_widget.item(5, 5)
self.table_widget.scrollToItem(item)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
运行该代码,将会显示一个包含有10行10列的QTableWidget和一个按钮。当点击按钮时,表格将会滚动到(5, 5)位置的表项
原文地址: http://www.cveoy.top/t/topic/i0Wx 著作权归作者所有。请勿转载和采集!