2010-11-16 6 views

Répondre

26

Créer une interface:

interface TableResources extends CellTable.Resources { 
    @Source({CellTable.Style.DEFAULT_CSS, "<your css file>.css"}) 
    TableStyle cellTableStyle(); 
    } 

    interface TableStyle extends CellTable.Style { 
    } 

et initialiser la table cellulaire:

CellTable.Resources resources = GWT.create(TableResources.class); 
    table = new CellTable<SomeProxy>(rowSize, resources); 

Dans le package cellview.client vous pouvez trouver les fichiers css par défaut de GWT. Yo utilise ceux-ci comme point de départ. Dans le "<your css file>.css" vous mettre des changements de style spécifiques.

Vous pouvez également définir le style de Colum (sur l'élément de col):

table.addColumnStyleName(colNumer, "some_css_style_name"); 

ou mieux utiliser css nom de la ressource à la place de la chaîne "some_css_style_name".

+0

Je ne peux pas construire ma table avec (rowSize, resouces) je l'annote avec UiField et ça ne marche pas. – rapadura

+2

Utilisez '@UiField (fourni = true)' avec le CellTable. De cette façon, UiBinder sait que vous créez la table en code. –

2

Juste pour le plaisir, je pourrais ajouter quelque chose que j'ai juste eu un mal de tête avec ... si vous changez cellTableStyle(); avec quelque chose d'autre il casse ... pas d'avertissement ou d'erreur, le CSS n'apparaît tout simplement pas comme je le pensais. Ne sachez pas où cela est documenté, mais je l'ai trouvé après beaucoup de fiddeling essayant de découvrir pourquoi certains CSS étaient corrects et d'autres pas ..

1

J'ai utilisé la solution ci-dessus, cependant, si vous avez une autre table avec style par défaut, il finit par faire avec votre table personnalisée. Êtes-vous obligé de remplacer toutes vos tables par un style personnalisé ou y a-t-il une solution de contournement?

Aussi, je trouve les constructeurs de CellTable moins qu'optimaux ... Je dois spécifier pageSize pour spécifier la ressource de style CellTable (pageSize, ressources) ... J'ai mis Integer.MAX_VALUE pour pageSize, je ne sais pas si cela devrait être -1 ou autre chose car il n'y a pas de javadoc sur cette valeur.

2

Pour une raison quelconque, mon cellTable.addColumnStyleName (colNumber, "cssStyle") ne fonctionnera tout simplement pas. Selon FireBug, il n'ajoute pas le style quoi qu'il arrive (si le style était incorrect, il aurait au moins pu l'ajouter à l'attribut classes du th-element ...). Peut-être que c'est parce que je redessine les colonnes, mais c'est quand même bizarre. Comment utiliser CellTable.Resources et CellTable avec UiBinder?

Questions connexes