选择或取消选择qt4中的行

时间:2010-12-01 04:16:16

标签: c++ qt4

如果在qt4中使用mouseevent选择或取消选择表行时如何设置或重置计数器?

1 个答案:

答案 0 :(得分:3)

假设您正在为表使用QTableView或QTableWidget,那么每当所选单元格集发生变化时,您都可以接收到Qt信号:

connect(theTable.selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)), this, SLOT(SelectionWasChanged(const QItemSelection &, const QItemSelection &)));

请注意,无论选择是通过鼠标,键盘还是其他方式更改,都可以使用。如果你只是在通过QMouseEvent进行选择时才需要回调,你可以通过在子类中重写QTableView :: mousePressEvent()和/或QTableView :: mouseReleaseEvent()并在调用之前将标志设置为true来实现回调。到超类(并在之后再次设置为false)并检查SelectionWasChanged()槽中的标志。