Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    JTable, selezione di intervalli multipli

    Ciao,
    avrei bisogno di selezionare programmaticamente (quindi non con mouse) più righe non contigue di una tabella.
    Ad esempio selezionare la riga 1 e 5.

    Io ho fatto:
    codice:
    table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
    
    int [] selezionati = table.getSelectedRows();
    ma mi sembra che posso solo selezionare un intervallo con:
    codice:
    table.getSelectionModel().setSelectionInterval(i,j)

    ma per intervalli multipli?
    Sul tutorial non ne parla mi sembra

    grazie molte

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    JTable mette a disposizione i seguenti due metodi:

    addColumnSelectionInterval(int index0, int index1)
    addRowSelectionInterval(int index0, int index1)

    L'interfaccia ListSelectionModel, prevede invece un

    addSelectionInterval(index0, index1)


    Chiaramente, servono per "aggiungere" intervalli di selezione ad una selezione già esistente.
    Mai usati prima, ma proverei a fare dei test.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    grande Lele!
    Ho provato così:
    codice:
    int [] selezionati = table.getSelectedRows();
    /*seleziono più righe assieme*/
    for(int i=0;i<selezionati.length;i++)
    {
           table.getSelectionModel().addSelectionInterval(selezionati[i], selezionati[i]);
    }
    e funziona!

    Grazie! Mi spiace non aver guardato bene tra quei numerosi metodi a disposizione...


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.