Как получить событие клика И двойного щелчка, работающее с 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 : Если я все еще хочу событие щелчка, я могу переопределить mousePressEvent(QMouseEvent* evt)
Подумал я ... Но опять же, mouseDoubleClickEvent больше не вызывается.И не говоря о проблеме 2 ...
Обратите внимание, что это для Qt 5.8.Есть похожий вопрос здесь , однако, похоже, что это только решение Qt 4.8: в QtableView больше нет сигнала cellClicked в Qt 5! ...