2012-03-30 6 views
12

Ho controllato la documentazione here e non riesco a trovare un metodo per impostare il testo del titolo o dell'intestazione di QTreeWidget.Qual è il metodo per impostare il testo per l'intestazione di QTreeWidget?

Senza impostare il titolo QTreeWidget utilizza automaticamente il numero '1' nel mio codice. Di seguito è riportato un esempio di ciò che sembra uscito. Presumo che QTreeWidget abbia un metodo per questo e io proprio non riesco a trovarlo.

QTreeWidget example

risposta

19

Siete alla ricerca di setHeaderLabel.

Nota che la documentazione dice che aggiunge una nuova colonna, quindi se il vostro punto di vista ha già colonna 0 con il testo "1", potrebbe invece essere necessario effettuare le seguenti operazioni:

if(QTreeWidgetItem* header = treeWidget->headerItem()) { 
    header->setText(0, "My Text"); 
} else { 
    treeWidget->setHeaderLabel("My Text"); 
} 
+0

Grazie, non so come mi sono perso. Contrassegnerò come risposta accettata quando posso. –

4

Ecco un altro metodo per impostare i testi di intestazione

QStringList headerLabels; 
headerLabels.push_back(tr("text1")); 
headerLabels.push_back(tr("text2")); 
headerLabels.push_back(tr("text3")); 
.. 
headerLabels.push_back(tr("textN")); 

treeWidget->setColumnCount(headerLabels.count()); 
treeWidget->setHeaderLabels(headerLabels); 
+0

Questo è stato molto utile, grazie! – Alan