J'utilise Nebula Grid pour afficher une feuille Excel dans mon application RCP. J'ai une exigence pour sélectionner toutes les lignes. Mon code est le suivant:Nebula GridViewer La sélection ne fonctionne pas
private void addKeyListener() {
this.gv.getGrid().addKeyListener(new KeyListener() {
@Override
public void keyPressed(KeyEvent arg0) {
}
@Override
public void keyReleased(KeyEvent e) {
if(e.stateMask==SWT.CTRL && e.keyCode =='a'){
ArrayList al = (ArrayList) gv.getInput();
//System.out.println("ctrl+c pressed");
gv.setSelection(new StructuredSelection(al.toArray()),true);
//gv.getGrid().setSelection(0, al.size()-1);
//gv.getGrid().selectAll();
//gv.getGrid().setSelection(new int[]{1,2});
//gv.getGrid().setSelection(1);
//gv.getGrid().setSelectionEnabled(true);
//gv.getGrid().select(new int[]{1,2,3});
//gv.refresh();
}
mais cela ne fonctionne pas. Qu'est-ce que je rate ?
j'utilisais les bits de style suivants 'gv = new GridTableViewer (this.container, SWT.BORDER | SWT.V_SCROLL \t \t \t \t | SWT.H_SCROLL | SWT.FULL_SELECTION);' mais cela n'a pas fonctionné . J'ai changé cela à 'gv = new GridTableViewer (this.container, SWT.BORDER | SWT.V_SCROLL \t \t \t \t | SWT.H_SCROLL | SWT.MULTI);'. Le selct tout fonctionne maintenant. Merci – ssdimmanuel