qt的tableview设置鼠标悬停选中
时间: 2023-08-24 22:08:02 浏览: 164
你可以通过设置 `QTableView` 的样式表来实现鼠标悬停选中的效果。下面是一个示例:
```python
tableView.setStyleSheet("QTableView::item:hover { background-color: #e6f3ff; }")
```
其中,`QTableView::item:hover` 表示当鼠标悬停在单元格上时生效,`background-color` 表示单元格背景色。你可以根据需要调整颜色值。
另外,要注意的是,如果你想要鼠标悬停选中后单击鼠标才能真正选中单元格,需要设置 `QTableView` 的选择模式为 `QAbstractItemView.SelectOnMouseRelease`。这样,当鼠标悬停在单元格上时,单元格会高亮显示,但不会立即选中,只有当你单击鼠标时才会选中单元格。示例代码如下:
```python
tableView.setSelectionBehavior(QAbstractItemView.SelectRows)
tableView.setSelectionMode(QAbstractItemView.SingleSelection)
tableView.setEditTriggers(QAbstractItemView.NoEditTriggers)
tableView.setAlternatingRowColors(True)
tableView.setSortingEnabled(True)
tableView.setShowGrid(False)
tableView.setStyleSheet("QTableView::item:hover { background-color: #e6f3ff; }")
tableView.setSelectionMode(QAbstractItemView.SingleSelection)
tableView.setSelectionBehavior(QAbstractItemView.SelectOnMouseRelease)
```
阅读全文