Pyqt突出显示表行

时间:2012-04-17 17:21:33

标签: python pyqt

如何在pyqt表小部件中突出显示一行。我不知道确切的单词,但我想手动点亮行,因为它发生了点击行。

2 个答案:

答案 0 :(得分:4)

在PyQt中,要选择并突出显示QTableWidget的一行,您需要知道行索引。

使用:

tableWidget.selectRow(rowID)

应该为你实现这一目标。但是,如果您要在鼠标悬停/悬停时突出显示一行,则需要捕获一个信号(我相信它是itemActivated)并操纵QTableView项目的样式。

答案 1 :(得分:1)

您的模型(QAbstractTableModel派生的)类应该为方法中的Qt::BackgroundColorRoleQt::ForegroundRole等角色返回正确的值

QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const = 0

基于您要突出显示的模型行的实际内容。