如何在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信号!...