如何在 QTableWidget 中通过 CTRL+click 禁用多项选择?

How do i disable multiple item selection via CTRL+click in QTableWidget?

我的 Qt 应用程序中有一个 class 继承自 QTableWidget 的实例。我希望它具有通过使用单击+拖动序列进行多项选择的功能(我有该功能并且工作正常),但我也想禁用 CTRL+单击序列。我该怎么做?

嗯,这取决于你到底想要什么。

最简单的方法是将 selectionMode 更改为 QAbstractItemView::ContiguousSelection。这样你就会得到 click-drag 序列。 但是,Ctrl-click 仍将处于活动状态,但它的行为类似于 shift-click。

如果您真的想禁用 Ctrl-click,唯一的方法是覆盖 mousePress()mouseRelease() 事件并将其过滤掉。