ola preciso de uma ajuda gostaria de saber se alguem sabe como fazer o jScrollPane ser automatico cada vez que eu ir incluindo um item na tabela ele ir decendo e mostrando o item junto.OBrigado
achei um codigo que faz isso mas ele sempre mostra o penultimo nao o ultimo o codigo é esse :
JScrollBar vertical = new JScrollBar();
vertical = getJScrollPane().getVerticalScrollBar();
int tamanho = vertical.getMaximum() ;
vertical.setValueIsAdjusting(true);
vertical.setValue(tamanho);
alguem tem alguma ideia do que possa ser ??
Tira uma ideia ai
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import java.util.Random;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.Timer;
/**
* @author fabiofalci
*/
public class AutoScroll extends JPanel implements ActionListener {
private JTextArea textArea;
private Random random = new Random(Calendar.getInstance().getTimeInMillis());
public AutoScroll() {
this.initialize();
this.initThread();
}
protected void initialize() {
this.setLayout(new BorderLayout());
this.textArea = new JTextArea();
this.add(new JScrollPane(this.textArea), BorderLayout.CENTER);
}
public void initThread() {
Timer t = new Timer(600, this);
t.start();
}
public void actionPerformed(ActionEvent e) {
byte[] b = new byte[this.random.nextInt(20)];
this.random.nextBytes(b);
int position = this.textArea.getCaretPosition();
this.textArea.insert(new String(b) + "\n", position);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
AutoScroll auto = new AutoScroll();
frame.setContentPane(auto);
frame.setSize(300, 200);
frame.setVisible(true);
}
}
valeu amigo mas ja consegui a solucao era simples era somente manda o scrollpane seta novamente a jtable
ex:
jScrollPane.setViewportView(getJTable());
e depois usar as mesmas linhas de codigo que coloquei acima ai ele montava a tabela e pegava o novo tamanho mandando o scrolll para o ultimo valor adiconado na tabela.Valeu mesmo asssim.Obrigado