Domanda

Ho un QTableWidget nella mia forma e voglio fare qualcosa quando un utente di DoubleClick sulla intestazione di una riga o colonna. Sto usando la seguente dichiarazione connect:

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

Dove this è la classe finestra e UI-> tblResults è la QTableWidget sulla forma della finestra. Quando provo doppio clic l'intestazione, non succede nulla. Lo slot Sto connessione a è:

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

Molto semplice, solo test per vedere se lo slot viene chiamato. Non ho mai ricevuto questo messagebox. Non ricevo alcun errore di runtime la chiamata connect ().

I Am utilizzando il segnale sbagliato? C'è qualcosa che non va? Per favore fatemi sapere se avete bisogno di più informazioni, e grazie per l'aiuto!

[modifica] Qualcuno in #qt su freenode mi ha aiutato. SEGNALE che cercavo era sectionDoubleClicked (int)

È stato utile?

Soluzione

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

È possibile ottenere il QHeaderView tramite QTableWidget::horizontalHeader() o QTableWidget::verticalHeader().

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top