我需要能够以编程方式选择TableView的某些行,从而向用户显示选定的行。 当然,用户应该无法通过单击此处和此处来更改选定的行。
当前,我发现禁用用户交互的唯一方法是:
self.table_view.setEnabled(False)
尽管这可以解决用户的选择问题,但它也改变了表格的外观,使其全部变为灰色:
答案 0 :(得分:0)
打开QDesigner并加载您的.ui文件。单击QTableView,然后在“属性编辑器”(右侧面板)中向下滚动到紫色区域。在那里,您将看到editTriggers
,将其展开。检查第一个显示NoEditTriggers
的内容。
这将使用户无法编辑表中的单元格。如果我的说明不够清楚,请告诉我。
答案 1 :(得分:0)
如果我正确理解了您的问题,则必须使用属性:
setSelectionBehavior()
table_view.setSelectionMode(QtWidgets.QAbstractItemView.NoSelection)
table_view.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)