J'utilise l'extrait ci-dessous pour effacer les données NatTable et effectuer une actualisation complète lors de l'actualisation.NatTable conserve la sélection des lignes sur les données effacées et recharge
natTable.getBodyDataProvider().getList().clear();
natTable.getBodyDataProvider().getList().addAll(inputList);
natTable.refresh();
Depuis, les données sont effacées et remis à zéro, je ne parviens pas à régler la sélection de rangée à la ligne précédemment sélectionnée avant l'actualisation.
Cependant, je me sers du RowSelectionModel pour restaurer la sélection avec succès Trier
final RowSelectionModel<T> rowSelectionModel = new RowSelectionModel<T>(bodyLayer.getSelectionLayer(),bodyDataProvider, rowIdAccessor);
bodyLayer.getSelectionLayer().setSelectionModel(rowSelectionModel);
Est-il possible de restaurer la sélection de ligne lorsque les données sont effacées et rechargées ??
J'ai vu la question existante sur PreserveModel: How to use Nebula NatTable's PreserveSelectionModel? Mais cela n'a pas répondu à ma question.
Appréciez si quelqu'un pourrait donner plus de pointeurs à ce sujet.
Cordialement, SDS
Merci pour la réponse rapide Dirk. Je cache la sélection Object et sur clear et reload je remets la sélection en utilisant rowSelectionProviderNatTable.setSelection (new StructuredSelection (previousSelectedObj)); Cela ne réinitialise pas la sélection à la table. Puisque NatTable a déjà le Paintlistener, existe-t-il un DefaultPaintListner que je peux utiliser? – SDS
Ne comprends pas la question. Pourquoi ne pouvez-vous pas ajouter un autre PaintListener? –
Je suis nouveau à NatTable et SWT PaintListener. Appréciez si vous pouvez partager un extrait de code pour définir la sélection de ligne. Je vous remercie. – SDS