potete gentilmente spiegarmi come poter spostare il knob della scrollbar di un jscrollpane da codice nella posizione che voglio in modo da visualizzare la riga della jtable in esso contenuta che voglio?
grazie e buona giornata
:quote::berto:
potete gentilmente spiegarmi come poter spostare il knob della scrollbar di un jscrollpane da codice nella posizione che voglio in modo da visualizzare la riga della jtable in esso contenuta che voglio?
grazie e buona giornata
:quote::berto:
Purtroppo non c'è in JTable un metodo apposito per rendere visibile una riga o cella.Originariamente inviato da sandro70
potete gentilmente spiegarmi come poter spostare il knob della scrollbar di un jscrollpane da codice nella posizione che voglio in modo da visualizzare la riga della jtable in esso contenuta che voglio?
In generale (indipendentemente da cosa contiene JScrollPane) basta prendere la scrollbar verticale/orizzontale dallo scrollpane (vedi javadoc) ed impostare il suo value.
Però nel tuo caso con JTable non è affatto "banale". Tu sai la riga da rendere visibile ma lo scrolling non è basato sulle "righe" .... è basato proprio sulle dimensioni fisiche. Insomma .... JScrollPane (e le sue due JScrollBar) non "sanno" nulla di righe/colonne/celle .... sanno solo che il componente contenuto si espande un tot in oriz./vert. e si basano su quello.
Quindi dovresti prendere il Rectangle della riga (vedi getCellRect() di JTable), per fare le cose in generale si dovrebbe anche tenere conto degli eventuali "insets" del componente e a quel punto si dovrebbero fare dei calcoli per determinare il "value" appropriato per lo scrollbar.
Nulla di impossibile .... ma così su due piedi non saprei dirti esattamente come farlo. Insomma, c'è solo da leggere bene la documentazione javadoc e fare qualche ragionamento.
EDIT: Forse c'è un metodo un pochino più semplice. Bisogna comunque determinare il Rectangle della riga del JTable ma ho visto che JViewport (il componente che gestisce la "finestra" sul componente nel JScrollPane) ha il metodo scrollRectToVisible(Rectangle). Quindi molto interessante.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet