我可以在QTableView/Widget中绘制线条吗?

我可以在QTableView/Widget中绘制线条吗?,qt,qtableview,Qt,Qtableview,如果用户在QTableView中选择一个单元格,我想指出具有相同值的其他单元格的位置。为此,我喜欢从所选单元格到其他单元格绘制直线 如果这将是一个QGraphicsView,这将很容易,但是如何将其绘制到QTableView?您最好的选择可能是使用.override paintEvent,然后调用所有行(可能最好将其缓存到QPixmap…)。要生成这些行,请从选择模型中获取当前索引,从模型中获取Qt::DisplayRole字符串,并迭代当前视口中的所有项目(索引为(0,0)和(宽度、高度))。

如果用户在
QTableView
中选择一个单元格,我想指出具有相同值的其他单元格的位置。为此,我喜欢从所选单元格到其他单元格绘制直线


如果这将是一个
QGraphicsView
,这将很容易,但是如何将其绘制到
QTableView

您最好的选择可能是使用.override paintEvent,然后调用所有行(可能最好将其缓存到QPixmap…)。要生成这些行,请从选择模型中获取当前索引,从模型中获取Qt::DisplayRole字符串,并迭代当前视口中的所有项目(索引为(0,0)和(宽度、高度))。如果他们匹配。。您可以使用visualRect为它们画一条线。或者,您可以将它们全部选中,然后不需要覆盖paintEvent。就我个人而言,我会把他们的字体改成粗体。。那么你甚至不需要搜索。。只需在项目委托中执行此操作。如果您想用其他内容进行指示,则更容易。例如,更改这些单元格的背景色,或使其字体加粗。但是如果你想画线。。。你得自己画。