Qt C ++:单击并双击QTableView

时间:2018-09-28 18:37:10

标签: c++ qt qt5 qtableview

如何在QTableVew上获得单击和双击事件?

我尝试了以下操作(在MyTableView的构造函数中,继承自QTableView):

connect(this, &QTableView::clicked, evtReceiver, &MyEventReceiver::onClick);
connect(this, &QTableView::doubleClicked, evtReceiver, &MyEventReceiver::onDoubleClick);

然后我得到了单击事件,但是没有双击。如果将connect删除到click事件中,则可以收到双击。 然后我尝试覆盖

void mouseDoubleClickEvent(QMouseEvent * event)

问题1 :我需要删除connect(this, &QTableView::clicked,...)才能调用mouseDoubleClickEvent,但是现在没有点击事件了。

问题2 :如何知道双击了哪个单元格?

问题3 :如果我仍然想要click事件,则可以覆盖mousePressEvent(QMouseEvent* evt),我以为...但是,再次,不再调用mouseDoubleClickEvent。而不是谈论问题2 ...

请注意,这是针对Qt 5.8的。还有一个类似的问题here,但是似乎只有Qt 4.8解决方案:在Qt 5中的QTableView上不再有cellClicked信号!...

0 个答案:

没有答案