2016-12-22 31 views
0

私はQTableWidgetを持っています。ユーザーがセルをクリックしたことに基づいていくつかの関数を呼び出す必要があります。QTableWidget(Qt)でクリックして正しくダブルクリックする方法は?

私は現在、以下のシグナルとスロットを使用しています:

// 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を使用しています。

答えて

0

右クリックすると、コンテキストメニューに関連するシグナル/イベントが起動しています。

詳細については、hereを参照してください。

関連する問題