вот это по клику. по наведению надо видимо отлавливать QMouseEvent
void MainWindow::on_tableView_clicked(const QModelIndex& index)
{
    ui->tableView->selectionModel()->clear();
    int rows = _model.rowCount();
    int columns = _model.columnCount();
    for (int i = 0; i < rows; i++)
        for (int j = 0; j < columns; j++)
            if (i == index.row() || j == index.column())
                ui->tableView->selectionModel()->select(_model.index(i, j), QItemSelectionModel::Select);
}