Peut-être que vous obtenez pause parce que vous n'avez pas appelé setItem()
pour définir un élément de la cellule (2, 2) avant d'utiliser overviewTable->item(2,2)
. Comme le document Qt dit,
QTableWidgetItem * QTableWidget :: item (int row, colonne int) const
Renvoie l'élément de la ligne et de la colonne donnée si l'on a été fixé; sinon retourne 0.
C'est, votre overviewTable->item(2,2)
retourne probablement 0, provoque ainsi un Segmentation fault
dans l'appel setFont()
.
Votre moyen de définir la police est donc tout à fait correct. Il suffit d'appeler setItem() au début, comme le suggère la réponse de mosg.
AJOUTÉE:
si votre overviewTable
est un QTableWidget
créé dans Qt Designer, puis dans le concepteur un double-clic sur une cellule (juste pour entrer dans le mode d'édition, pas besoin d'entrer quoi que ce soit) sera ont pour effet d'appeler setItem()
pour cette cellule. Plus tard dans votre code, vous pouvez directement utiliser la fonction item()
sans avoir à appeler le setItem()
en premier.
Qu'est-ce que overviewTable? Est-ce QTableWidget ou QTableView? – mosg