Grazie 1000!Originariamente inviato da andbin
Ci sono 2 modi e nota, non c'è da andare direttamente a manipolare il JScrollBar (al massimo il JViewport).
Modo 1)
unJList.ensureIndexIsVisible(indiceRiga);
Questo fa sì che la riga sia resa visibile. Da notare che la posizione fisica della riga all'interno della vista non è precisato, dipende da dove era "vista" prima di rendere visibile l'elemento (cioè se prima o dopo). Se la riga fosse già visibile, non viene cambiato nulla.
Modo 2)
Questo fa sì che la riga sia resa visibile e posizionata sempre in alto/sinistra (a seconda della modalità di JList). Se non è possibile farlo (es. non ci sono sufficienti elementi affinché quella riga sia al "top") la riga è comunque garantito che sia visibile.codice:Rectangle rowRect = unJList.getCellBounds(indiceRiga, indiceRiga); if (rowRect != null) { JViewport viewport = scrollPane.getViewport(); viewport.setViewPosition(rowRect.getLocation()); }