在QTableView中使用鼠标右键进行选择

Selection with right mouse button in QTableView

本文关键字:右键 行选 选择 鼠标 QTableView      更新时间:2023-10-16

我有一个具有以下选择设置的表视图:

setSelectionBehavior(QAbstractItemView::SelectRows);
setSelectionMode(QAbstractItemView::ExtendedSelection);

这样,我可以通过单击并悬停鼠标左键来选择几行。

但是,此行为与拖放冲突,这就是我们在Windows资源管理器中看到的

我想允许用户使用鼠标右键选择行,并用鼠标左键拖放它们(就像在 Total Commander 中一样)。

我该怎么做?

如果还没有,请对正在使用的任何内置表视图(可能QTableView)进行子类化,然后重新实现mousePressEvent(QMouseEvent* event)mouseReleaseEvent(QMouseEvent* event)以修改当前选择。