Gambas France BETA


Pas de compte ? Incription

filtre sur tableview

1
AuteurMessages
JeanPhi#1 Posté le 21/7/2011 à 16:14:00
Bonjour tout le monde

J'aurais besoin de quelques infos par rapport à l'utilisation du tableview. Je développe (ou du moins j'essaie :) ) une petite appli qui compare deux tables et me ressort les anomalies (ex : enregistrement présent uniquement dans une table, etc...)

Pour cela, j'utilise un tableview pour afficher le résultat du SQL me permettant d'avoir le contenu des tables et ça marche pas trop mal (enfin, à mon humble avis..... on se motive comme on peut)

J'en suis donc à l'étape suivante : ressortir les anomalies entre les deux tables. Voilà mes questions :

- Est-il possible d'avoir des filtres dans un tableview ? Si non, je passerai par une combobox pour modifier le contenu du tableview an fonction de l'anomalie que je souhaite afficher

- Est ce que les cellules d'un tableview sont programmables? A savoir que si je clique sur une cellule, une mini fenêtre s'affiche avec le détail complet de l' enregistrement correspondant

Merci d'avance pour vos réponses
Prokopy#2 Posté le 21/7/2011 à 18:19:00
Kinder Pingui
Est-il possible d'avoir des filtres dans un tableview ? Si non, je passerai par une combobox pour modifier le contenu du tableview an fonction de l'anomalie que je souhaite afficher


Non, il n'y a pas de filtre sur TableView. Mais Je pense que ta solution ne devrait pas être trop compliquée à mettre en place. ;)

Est ce que les cellules d'un tableview sont programmables? A savoir que si je clique sur une cellule, une mini fenêtre s'affiche avec le détail complet de l' enregistrement correspondant


Directement, non. Il n'y a pas d'évènement Click pour chaque cellule. Par contre, tu peux récupérer les coordonnées de la souris lors de l'évènement Click, puis passer ces coordonnées aux méthodes RowAt() et ColumnAt() pour en déduire les indices de la cellule cliquée :

1
PUBLIC SUB TableView1_ClickDim rowCellule, olCellule AS IntegercolCellule = LAST.ColumnAt(Mouse.X)rowCellule = LAST.RowAt(Mouse.Y)PRINT LAST[rowCellule, colCellule].Text'Affiche le contenu de la cellule cliquée.End


À partir ce ces indices, je pense que tu dois pouvoir facilement retrouver des informations sur tes enregistrements. :)
La théorie, c'est quand on sait tout et que rien ne fonctionne.
La pratique, c'est quand ça marche mais qu'on ne sait pas pourquoi.
Quand la théorie rejoint la pratique, rien ne fonctionne et on ne sait pas pourquoi.
JeanPhi#3 Posté le 22/7/2011 à 07:53:00
ok, merci pour les infos Prokopy, je vais tester ça, a+
1