Bonsoir à tous
Aujourd'hui j'ai eu un souci car j'avais besoin de cacher certains onglets d'un QTabWidget.
J'ai bien trouvé la méthode setTabEnabled() permettant d'activer/désactiver un onglet mais j'ai pas trouvé de setTabVisible() ou setTabHidden() qui m'auraient permis de cacher/afficher ledit onglet
Pourtant, la doc de setTabEnabled() dit ceci
D'après ce que je comprends de la partie en rouge "si la page est déjà visible, QTabWidget ne la cachera pas". Ce qui sous-entend que la page peut être invisible. Mais comment ?Note that even a disabled tab/page may be visible. If the page is visible already, QTabWidget will not hide it; if all the pages are disabled, QTabWidget will show one of them.
J'ai trouvé toutefois une solution de contournement
Code python : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 # Commencer par supprimer les tab résiduels - Cela ne les efface pas mais les détache du tabWidget for i in range(tabWidget.count()): # Attention, la suppression d'un tab décale les indices des tab restants donc pour faire simple, on laisse l'indice 0 => cela supprimera à chaque itération le premier tab tabWidget.removeTab(0) # Réattacher au tabWidget les tab qui m'intéressent for tab in monTableauPerso: if tab["doit etre affiché"]: tabWidget.addTab(...)
Bon ça fonctionne mais si qqun a une meilleure idée...
Merci à tous![]()
Partager