Innanzitutto immagino, da quanto dici, che il filtro vuoi farlo "a valle" sui dati già presenti nella tabella e non "a monte" come condizione nella select sul database.Originariamente inviato da saverix80
ho una tabella con la quale visualizzo un elenco di dati estratti da un database. Vorrei, attraverso l'immissione di un valore in una JTextField, ricercare determinate righe dell'elenco . Potete aiutarmi?
Come seconda cosa dovresti precisare se il table model è uno predefinito oppure è una tua implementazione. In quest'ultimo caso se la implementazione l'hai fatta tu e hai gestito una tua struttura dati nel model, allora basterebbe fare in modo che il model offra all'esterno un metodo per il filtro e che internamente vada a fare la ricerca.
Tieni anche presente che da Java 6 esistono TableRowSorter e RowFilter che consentono filtri più sofisticati e combinabili insieme.
Ma c'è ancora un'altra questione. Tu cerchi qualcosa e ci sono righe che corrispondono alla ricerca, cosa vuoi fare? Mostrare nella tabella solo più le righe che corrispondono? Oppure lasciare i dati come sono ma evidenziare (o es. con un colore di sfondo custom oppure proprio con la "selezione" multipla di JTable) le righe? O altro?
E infine dovresti anche precisare quale è il criterio di ricerca. Su una colonna specifica? Su tutte le colonne? Ricerca parziale? Ricerca con una espressione regolare?
Come vedi le cose da valutare sono svariate.

Rispondi quotando