-
TableViewer et Renderer
Bonjour,
J'ai un petit soucis avec les tables SWT.
J'ai codé une table, le modèle de données (ContentProdiver) fournit correctement les éléments pour chaque ligne, les éditeurs fonctionnent correctement lorsque l'on clique sur un élément et affiche l'éditeur correspondant suivant la colonne.
Maintenant, j'ai besoin d'aller plus loin et de faire un CellRenderer pour chaque colonne. C'est à dire que, comme les éditeurs, j'ai besoin de retourner un objet Composite (et non une chaîne de texte comme me propose le LabelProvider) pour chaque colonne. Est-ce faisable ?
Cordialement,
Christophe.
-
Je n'ai pas bien compris, mais peut-être que cet article pourra t'aider :
Building and delivering a table editor with SWT/JFace
-
Bonjour,
Merci pour ta réponse.
Je connais cet article (j'ai débuté avec cet article pour construire la première table). Le soucis est que les éléments contenus dans cette table sont des objets spécifiques TableItem. A partir de ces objets, la table affiche un label texte.
Lors du clique sur une cellule, la table demande alors à un éditeur de retourner le composant servant à l'édition de la cellule. Ici, on peut retourner un Control (et donc un objet graphique custom).
Dans l'exemple donné, les cellules ne peuvent qu'afficher du texte (sauf en mode édition).
La colonne de gauche est une checkbox mais elle est nativement supportée par la table (je ne peux pas me servir de ce comportement pour d'autres colonnes)...
Je viens de tomber sur le projet Nebula (associé à Eclipse), ou les développeurs proposent des composants SWT améliorés: Ils proposent notemment une SWT TableComposite: Une table évoluée permettant de gérer des renderer.
http://www.eclipse.org/nebula/widget...ositetable.php
-
Ok, j'ai ma réponse.
Il faut déclarer un éditeur (TableEditor) pour chaque élément indéxé à ligne / colonne.
Il faut le faire à la main pour chaque élément.
Chris.