Bonjour à tous
Je cherche à filtrer les éléments d'un QTableWidget. C'est à dire avoir un QTableWidget qui contienne diverses valeurs (ok) mais pouvoir dire ensuite "n'affiche que les lignes qui ont telle valeur dans cette colonne".
Ma première idée a été de mettre des QComboBox pour chaque colonne. La combo récupère toutes les valeurs disponibles de la colonne et ensuite, je filtre sur la combo choisie. Ca marche mais les largeurs des combo ne sont pas les mêmes que celles des colonnes du QTable et c'est moche.
Ensuite je teste avec 2 QTableQidget, le premier servant à choisir les valeurs ce qui permet ensuite le filtre du second sur les valeurs choisies dans le premier. Et via un setItemDelegate je peux même mettre des combo dans les colonnes du premier. Ca marche mais souci, les 2 QTableWidget sont placés l'un au dessus de l'autre mais Qt m'affiche du vide entre les deux. Je n'arrive pas à dire au second "colle-toi sous le premier". Pourtant ils sont tous deux dans un layout vertical avec gestion du stretch mais non, le premier bien que n'ayant qu'une seule ligne reste affiché dans un espace plus grand que prévu et c'est moche.
J'ai aussi pensé à ne mettre qu'un seul tablewidget et déléguer la toute première ligne au choix des valeurs, mais le souci c'est que le QTableWidget est "sortable" et si l'utilisateur active le tri, ça déplacera cette première ligne.
Donc je reste sec. Si quelqu'un a une idée...
Merci à tous
Partager