у меня есть QTableWidget
и мне нужно вызвать некоторые функции, основанные на щелчке пользователя по ячейке.
В настоящее время я использую следующие сигналы и слоты:
// cellClicked(int,int)
void MyClass::on_myTableWidget_cellClicked(int row, int column)
{
qDebug() << "Click";
}
// cellDoubleClicked(int,int)
void MyClass::on_myTableWidget_cellDoubleClicked(int row, int column)
{
qDebug() << "Double Click";
}
Проблема в том, что on_myTableWidget_cellClicked
вызывается только когда я использую левую кнопку мыши. Если я использую правую кнопку мыши, это не работает. И on_myTableWidget_cellDoubleClicked
вызывается как на левой, так и на правой кнопках мыши.
На самом деле я хочу, чтобы on_myTableWidget_cellClicked
вызываться с помощью левой или правой кнопки мыши, и что on_myTableWidget_cellDoubleClicked
вызываться только тогда, когда я использую левую кнопку мыши.
Как я могу это сделать? Просто используя eventFilter
? Если да, как я могу получить правильный ряд из QTableWidget
?
Я использую Qt версии 5.3.2.
При щелчке правой кнопкой мыши запускается связанный с контекстным меню сигнал / событие.
Увидеть Вот Больше подробностей.
Других решений пока нет …