3

フォームに QTableWidget があり、ユーザーが行または列のヘッダーをダブルクリックしたときに何かをしたいと考えています。次の接続ステートメントを使用しています。

connect(ui->tblResults->horizontalHeader(),SIGNAL(doubleClicked(QModelIndex)),this,SLOT(tableDoubleClicked(QModelIndex)));

はウィンドウ クラスで、 ui- this>tblResults はウィンドウのフォーム上の QTableWidget です。ヘッダーをダブルクリックしようとしても、何も起こりません。私が接続しているスロットは次のとおりです。

void wndSearch::tableDoubleClicked(QModelIndex tmp){
    QMessageBox::information(0,"DERP!","TEST");
}

非常に単純で、スロットが呼び出されるかどうかをテストするだけです。このメッセージボックスを受け取りません。connect() 呼び出しで実行時エラーが発生しません。

間違った信号を使用していますか? 他に何か問題がありますか?さらに情報が必要な場合はお知らせください。ご協力ありがとうございます。

[編集] freenode の #qt の誰かが私を助けてくれました。私が探していたSIGNALは sectionDoubleClicked(int) でした

4

1 に答える 1

4

http://doc.qt.nokia.com/latest/qheaderview.html#sectionDoubleClicked

QHeaderView経由QTableWidget::horizontalHeader()またはを取得できますQTableWidget::verticalHeader()

于 2010-11-08T22:12:36.393 に答える