2009-10-06 5 views
1

Tout le monde sait s'il est possible d'activer/désactiver des champs JFace TextCellEditor individuels.DISsable JFace Champ TextCellEditor

Par exemple, si j'ai une table avec 5 colonnes, je veux la dernière cellule à vide, sauf si le terrain n ° 4 est rempli.

Répondre

4

Si vous utilisez la classe EditingSupport, vous pouvez définir canEdit revenir vrai.

TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE); 

EditingSupport editingSupport = new EditingSupport(viewer) 
{ 
    ... implement abstract methods ... 

    protected boolean canEdit(Object element) 
    { 
     return (/* criteria to determine if this column is editable*/) 
    } 
}; 

column.setEditingSupport(editingSupport); 
+0

Merci, c'est peut-être ce dont j'ai besoin. Je vais essayer cela aujourd'hui ... j'espère que je peux vérifier cette case verte pour vous –

+0

J'ai fini par le faire un peu différent en faisant un CellModifier qui implémente ICellModifier Je souhaite juste que je pourrais trouver quelque chose de mieux que canEdit - comme en fait gris sur le field –

+0

@PSU_Kardi: Je suis confronté à un problème similaire. J'ai essayé avec EditingSupport. Mais je veux être en train de griser toute la rangée. Pouvez-vous s'il vous plaît me donner une idée si vous l'avez fait? – Acjb