擅长:python、mysql、java
<p>我意识到这个问题很古老,但我是在寻找如何做到这一点时通过谷歌找到的。在</p>
<p>简而言之,我相信你所追求的是方法<a href="http://doc.qt.io/qt-5/qabstractitemview.html#selectedIndexes" rel="nofollow noreferrer">^{<cd1>}</a>。在</p>
<p>下面是一个最小的工作示例:</p>
<pre><code>import sys
from PyQt5.QtGui import QStandardItem, QStandardItemModel
from PyQt5.QtWidgets import QAbstractItemView, QApplication, QTableView
names = ["Adam", "Brian", "Carol", "David", "Emily"]
def selection_changed():
selected_names = [names[idx.row()] for idx in table_view.selectedIndexes()]
print("Selection changed:", selected_names)
app = QApplication(sys.argv)
table_view = QTableView()
model = QStandardItemModel()
table_view.setModel(model)
for name in names:
item = QStandardItem(name)
model.appendRow(item)
table_view.setSelectionMode(QAbstractItemView.ExtendedSelection) # <- optional
selection_model = table_view.selectionModel()
selection_model.selectionChanged.connect(selection_changed)
table_view.show()
app.exec_()
</code></pre>