Question

J'utilise Qt4 pour créer une table, en utilisant la classe QTableWidget.

Le problème est: Je veux cacher les étiquettes de ligne (à savoir les numéros). Je me soucie seulement de colonnes. Je veux obtenir ceci:


(source: ldc.usb.ve )

Comment puis-je y arriver?

Était-ce utile?

La solution

Je me demandais la même chose. Cependant, je suis trop paresseux pour trouver une solution jusqu'à ce que vous avez demandé. (Merci!!). Quoi qu'il en soit, voici le code qui a fonctionné pour moi:

    table = QtGui.QTableWidget()
    table.verticalHeader().setVisible(False)

Ce sont en fait de QTableView méthodes . Puisque vous utilisez un QTableWidget qui est un enfant de QTableView , tout fonctionne.

Je ne suis pas sûr que ce soit la meilleure façon de le faire, mais la documentation QHeaderView recommande cette méthode. Pour citer le PyQt4 DOCS-

Apparence

QTableWidget et QTableView créer des en-têtes par défaut. Si vous voulez que les en-têtes soient setVisible () visible, vous pouvez utiliser.
Remarque : Chaque en-tête rend les données pour chaque section elle-même, et ne pas compter sur une déléguer. En conséquence, appelant la fonction setItemDelegate () d'un en-tête aura pas effet.

Autres conseils

Vous pouvez aussi mettre vos données dans un objet QTableView et cacher l'en-tête verticale de la ligne avec un hide () fonction . Voici l'exemple de code,

 QTableView *empview = new QTableView();
 empview->verticalHeader()->hide();

Maintenant, vous pouvez simplement utiliser :

setHeaderHidden(true);

hérité de QTreeView . Il a été introduit dans Qt4.4.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top